Я использую оператор UNLOAD
в Redshift некоторое время, это облегчает отправку файла в S3
, а затем позволяет людям анализировать.Amazon Redshift - Unload to S3 - имя файла Dynamic S3
Пришло время попытаться автоматизировать его. У нас есть Amazon Data Pipeline
, работающий для нескольких задач, и я хотел запустить SQLActivity
для автоматического выполнения UNLOAD
. Я использую сценарий SQL
, размещенный в S3
.
Сам запрос правильный, но то, что я пытаюсь выяснить, - как я могу динамически назначать имя файла. Например:
UNLOAD('<the_query>')
TO 's3://my-bucket/' || to_char(current_date)
WITH CREDENTIALS '<credentials>'
ALLOWOVERWRITE
PARALLEL OFF
не работает, и, конечно, я подозреваю, что вы не можете выполнить функции (to_char
) в строке «TO
». Есть ли другой способ, которым я могу это сделать?
И если UNLOAD
это не так, у меня есть какие-либо другие варианты, как автоматизировать такие задачи, с текущей доступной инфраструктуры (Redshift
+ S3
+ Data Pipeline
, наш Amazon EMR
еще не активирована).
Единственное, что я думал, что мог бы работать (но не уверен) не вместо использования скрипта, чтобы скопировать скрипт в опции Script
в SQLActivity
(на данный момент он указывает на файл) и ссылаться на {@ScheduleStartTime}