为 AWS Data Pipeline SqlActivity 指定 Redshift 架构,而不在 sql 脚本的开头添加“set search_path to ...”
Posted
技术标签:
【中文标题】为 AWS Data Pipeline SqlActivity 指定 Redshift 架构,而不在 sql 脚本的开头添加“set search_path to ...”【英文标题】:Specify Redshift schema for AWS Data Pipeline SqlActivity without adding "set search_path to ..." at beginning of sql script 【发布时间】:2017-02-13 21:00:40 【问题描述】:我正在构建一个 AWS 数据管道,它只是执行一组位于 Redshift EC2Resource 上 s3 上的 sql 脚本。我需要脚本在生产模式而不是测试模式上运行。最好我会在不向每个脚本添加“将 search_path 设置为 schemaname”的情况下执行此操作。我需要类似“连接脚本”功能(例如在 SQL Workbench 中)来执行此操作。有人有想法么?谢谢!
【问题讨论】:
解决方法:我刚刚编写了一个脚本来为每个文件添加“将搜索路径设置为模式名”,然后将其上传到适当的 s3 存储桶 【参考方案1】:为表格使用 2 个部分名称,即schema.table
。
COPY my_schema.my_table
FROM 's3://…
如果这是一个 shell 脚本,您可以在调用脚本时替换架构。 FWIW,我们一直这样做。
【讨论】:
以上是关于为 AWS Data Pipeline SqlActivity 指定 Redshift 架构,而不在 sql 脚本的开头添加“set search_path to ...”的主要内容,如果未能解决你的问题,请参考以下文章
使用 Data Pipeline 在 AWS 中进行批处理文件
AWS:通过使用 amazon-data-pipeline 将数据从 S3 传输到 Redshift 来实现除 COPY 之外的其他功能