РАЗГРУЗИТЬ Redshift: добавить - PullRequest
1 голос
/ 04 мая 2020

Я бы хотел РАЗГРУЗИТЬ данные из таблицы Redshift в уже существующую папку S3, аналогично тому, что происходит в Spark с опцией записи " append "(поэтому создание новых файлов в целевой папке, если она уже существует).

Мне известна опция ALLOWOVERWRITE, но при этом удаляется уже существующая папка.

Поддерживается ли что-то в Redshift? Если нет, какой подход рекомендуется? (в любом случае, я считаю, что это желаемая особенность ...)

1 Ответ

3 голосов
/ 04 мая 2020

Одним из решений, которое может решить эту проблему, является добавление другого уникального суффикса после папки, например

unload ('select * from my_table') 
to 's3://mybucket/first_folder/unique_prefix_' iam_role 
'arn:aws:iam::0123456789012:role/MyRedshiftRole'; 

Если вы добавите unique_prefix_ после первого уровня folder, все ваши новые файлы будут запущены с вашим unique_prefix_ во время операции выгрузки, поэтому вам не нужно никакого ALLOWOVERWRITE. Единственная проблема этого подхода заключается в том, что если вы выгружаете изменение данных, у вас может быть смешанная схема для выгруженных данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...