Я глубоко погрузился в настройку запросов Redshift. Я новичок в этой технологии. У меня есть несколько базовых вопросов и несколько свободно сформированных толкований, которые я надеюсь получить от моего подтверждения или опровержения.
Вот так ...
- Распределение против широковещательных операций:
До сих пор я не нашел ничего в руководстве, которое убедительно говорит мне разницу. Что я заметил в Плане, так это то, что, если я выберу стиль распространения ALL, я все равно вижу, как происходят операции BCAST. Может кто-нибудь объяснить, пожалуйста, разницу между этими операциями?
- Узлы против ломтиков:
Я обращаю внимание на руководство, в контексте операций распределения, в одном месте это указывает, что данные распределены по узлам, а в другом - это указывает, что данные распределены по слайсам. Я анализирую план в среде разработчика с одним узлом и двумя срезами. Вот моя слабо сформированная интерпретация:
Оптимизатор не зависит от узла; это заботится о ломтиках. Данные могут быть распределены на узел, инцидентный срезу, являющемуся резидентом этого целевого узла. Кто-то может подтвердить или опровергнуть это?
- Соединения высокой мощности
Я пытаюсь настроить две большие таблицы транзакций с несколькими операциями соединения с высокой мощностью (без первичного / внешнего ключа). Прошел несколько разнообразных итераций с участием стилей dist и клавиш сортировки в дополнение к чтению нескольких блогов по настройке.
Слабо сформулированная интерпретация: Redshift выделяется как схемы «звезда / снежинка», в которых объединения обычно имеют низкую мощность (Dims и таблицы фактов), но борются с транзакционными таблицами. Кто-то может подтвердить или опровергнуть это?
Я ценю ваши идеи.
Спасибо!