2016-11-16 2 views
0

Я использую AWS Redshift в качестве back-end для настольного компьютера. AWS-кластер работает с двумя dc1.large узлами и таблицей базы данных, которую я анализирую, составляет 30 ГБ (с включенным сжатием красного смещения), я выбрал Redshift над выводом таблицы из-за проблемы с производительностью, но похоже, что Live-соединение Redshift намного медленнее, чем извлечение , Любые предложения, на которые я должен смотреть?AWS Redshift + Tableau Performance Booster

+0

в режиме реального времени, вы выполняете соединение между несколькими таблицами? или Tableo запрашивает только одну таблицу Redshift? –

+0

Одна таблица красного смещения (Колонки закодированы, за исключением сортировки) – imVJ

ответ

0

Чтобы использовать RedShift в качестве движка для платформы бизнес-анализа, как Tableau, есть четыре вещи, которые вы можете сделать для решения задержки:

1) Параллелизм: Redshift не велика при выполнении нескольких запросов одновременно поэтому перед началом настройки базы данных убедитесь, что ваш запрос не ждет очереди за другими запросами. (Если вы единственный в кластере, это не должно быть проблемой.)

2) Размер стола: Всякий раз, когда вы можете, используйте таблицы агрегатов для повышения производительности. Меньше строк для сканирования означает меньше IO и более быстрый оборот!

3) Сложность запроса: В идеале вы хотите, чтобы инструмент BI выдавал простые, быстрые запросы. Удостоверьтесь, что ваши исходные таблицы быстрые, и что Tableau не принуждается делать кучу объединений. Кроме того, если вашему запросу требуется объединение нескольких таблиц, убедитесь, что в больших таблицах есть один и тот же ключ распространения.

4) «Индексирование»: Технически, Redshift не поддерживает истинное индексирование, но вы можете приблизиться к одной и той же вещи, используя «чередующиеся» ключи сортировки. Традиционные составные ключи сортировки не помогут, но ключ сортировки с чередованием может позволить вам быстро получить доступ к строкам из нескольких векторов (например, date и customer_id), не просматривая всю таблицу.

Reality Check

После всех этих вещей, которые оптимизированы, вы часто обнаружите, что вы до сих пор не может быть столь же быстро, как экстракт Tableau. Проще говоря, «быстрая» панель мониторинга Tableau должна вернуть данные своему пользователю в < 5 секунд. Если у вас 7 визуальных эффектов на панели управления, и каждый из базовых запросов занимает 800 миллисекунд, чтобы вернуться (что очень быстро для запроса к базе данных), вы все равно едва достигаете своей целевой производительности. Теперь, если только один из этих запросов занимает 5 секунд или более, ваша панель будет чувствовать себя «медленной», независимо от того, что вы делаете.

Резюме Redshift может быть настроен с использованием подхода, описанного выше, но это может стоить усилий. Лучшие приложения для использования живого запроса Redshift вместо табличных выписок в тех случаях, когда данные физически слишком велики для создания выписки и когда вам требуются данные на уровне детализации, что делает невозможным предварительное агрегатирование. Одной из хороших стратегий является создание вашей главной информационной панели с использованием экстракта, чтобы исследование/обнаружение было как можно быстрее, а затем использовать прямые (живые) запросы Redshift для ваших сквозных отчетов (например, когда вы хотите точно увидеть, какие клиенты свернитесь в свои итоги).

Смежные вопросы