Стиль распространения может быть одним из нескольких вариантов. Из Стили распространения - Amazon Redshift :
- Авто: Amazon Redshift назначает оптимальный стиль распространения в зависимости от размера данных таблицы.
- Событие: Узел-лидер распределяет строки по срезам в циклическом порядке.
- Ключ: Строки распределены по значениям в одномстолбец.
- Все: Копия всей таблицы распространяется на каждый узел.
Эта спецификация:
col_1 INTEGER NOT NULL DISTKEY SORTKEY,
являетсяуказав Redshift использовать стиль распространения Key , поскольку он назначает столбец для использования в качестве DISTKEY
.
Тем не менее, DISTSTYLE ALL
внизу указывает Redshift на использованиеAll
стиль распространения.
Таким образом, Redshift выдает ошибку, поскольку запрошены два различных стиля распространения . Вам нужно будет выбрать один, а не оба.
Учитывая, что вы выбрали столбец как DISTKEY
, вам, вероятно, следует удалить DISTSTYLE ALL
.
Краткое руководство по DISTKEY
иSORTKEY
is:
- Для
DISTKEY
используйте столбец, который наиболее часто используется в JOIN - Для
SORTKEY
, используйте столбец, который наиболее часто используется в WHERE
Я заметил, что вы выбрали один столбец для DISTKEY
и SORTKEY
. Вы можете подтвердить, что это подходит для ваших данных.