jen*_*irf 8 postgresql amazon-web-services amazon-redshift amazon-data-pipeline
我正在使用AWS数据管道服务将数据从RDS MySql数据库传输到s3然后再Redshift传入,这很好用.
但是,我也有数据存在于一个RDS Postres实例中,我想以相同的方式管道,但我很难设置jdbc连接.如果不支持,是否有解决方法?
"connectionString": "jdbc:postgresql://THE_RDS_INSTANCE:5432/THE_DB”
Run Code Online (Sandbox Code Playgroud)
小智 14
现在,您可以定义一个复制活动,以将Postgres RDS实例中的数据提取到S3中.在Data Pipeline界面中:
小智 5
这还行不通.aws没有内置/发布功能,以便很好地连接到postgres.你可以在shellcommandactivity中做到这一点.您可以编写一些ruby或python代码来执行此操作,并使用scriptUri将其放在s3上的脚本中.您也可以编写一个psql命令将表转储到csv,然后通过该活动节点中的"staging:true"将其传递给OUTPUT1_STAGING_DIR.
这样的事情:
{
"id": "DumpCommand",
"type": "ShellCommandActivity",
"runsOn": { "ref": "MyEC2Resource" },
"stage": "true",
"output": { "ref": "S3ForRedshiftDataNode" },
"command": "PGPASSWORD=password psql -h HOST -U USER -d DATABASE -p 5432 -t -A -F\",\" -c \"select blah_id from blahs\" > ${OUTPUT1_STAGING_DIR}/my_data.csv"
}
Run Code Online (Sandbox Code Playgroud)
我没有运行这个来验证,因为旋转管道是一个痛苦:(所以仔细检查命令中的转义.
查看刚刚在参数化模板数据管道上启动的新内容:http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-custom-templates.html.看起来它将允许加密任意参数.
| 归档时间: |
|
| 查看次数: |
13789 次 |
| 最近记录: |