我一直在Redshift中使用UNLOAD
语句一段时间,它可以更容易地将文件转储到S3
,然后让人们进行分析。亚马逊Redshift - 卸载到S3 - 动态S3文件名
现在已经到了尝试实现自动化的时候了。我们有Amazon Data Pipeline
运行几个任务,我想运行SQLActivity
自动执行UNLOAD
。我使用S3
中的SQL
脚本。
查询本身是正确的,但我一直在试图找出如何动态分配文件的名称。例如:
UNLOAD('<the_query>')
TO 's3://my-bucket/' || to_char(current_date)
WITH CREDENTIALS '<credentials>'
ALLOWOVERWRITE
PARALLEL OFF
不工作,当然,我怀疑你不能在“TO
”行执行功能(to_char
)。有什么其他方式可以做到吗?
如果UNLOAD
是没有办法的办法,我有任何其他选项如何将此类任务结合现有的基础设施(Redshift
+ S3
+ Data Pipeline
,我们Amazon EMR
尚未生效)自动化。
,我认为可以工作(但不知道)的唯一事情是不是不使用脚本,该脚本复制到Script
选项SQLActivity
(它指向文件的时刻)和基准{@ScheduleStartTime}