跨区域Amazon S3的CSV数据通过AWS Glue迁移至指定区域Amazon RDS相关问题
AWS Glue跨区域S3迁RDS可行性及操作说明
可以实现你描述的需求,AWS Glue原生支持跨区域访问不同地域的S3存储桶,也支持将处理后的CSV数据写入指定区域的RDS实例,具体操作配置要点如下:
IAM权限配置
给Glue作业关联的IAM角色添加以下必要权限:- 两个目标S3存储桶的
s3:ListBucket、s3:GetObject权限,IAM权限为全局生效,无需额外配置跨区域访问开关即可直接读取不同区域的S3对象 - 若S3存储桶开启了KMS服务器端加密,还需要给角色添加对应KMS密钥的解密权限
- 目标RDS的访问权限,以及AWS Secrets Manager的读取权限(如果使用 Secrets Manager存储数据库账号密码)
- 两个目标S3存储桶的
数据源配置
直接在Glue作业中添加两个S3数据源即可,路径格式和同区域S3完全一致,填写s3://<S3桶名>/<文件前缀>/即可,Glue会自动识别桶所属区域并发起访问请求,直接使用Glue内置的CSV解析器即可完成文件格式处理,支持自定义表头、分隔符、编码等参数。RDS目标端配置
首先需要保障Glue作业的网络可以连通目标区域的RDS实例:- 如果RDS部署在VPC内部,可将Glue作业配置为运行在与RDS相同的VPC子网下,同时配置RDS安全组放通Glue子网CIDR到数据库对应端口(如MySQL 3306、PostgreSQL 5432等)的入站规则
- 如果RDS开启了公网访问,可直接在Glue的JDBC连接中填写RDS的公网Endpoint,同时放通Glue的公网出口IP访问权限
数据写入直接使用Glue内置的JDBC写入组件即可,支持自动建表、增量写入、批量提交等常用迁移能力。
成本优化提示
跨区域访问S3会产生跨区域数据传输费用,如果你的迁移数据量较大,建议优先用S3跨区域复制功能将两个不同区域的S3桶数据同步到RDS所在区域的S3桶,再运行Glue作业做迁移,可有效降低跨区域传输成本。
内容的提问来源于stack exchange,提问作者Rohit Singh
相关产品推荐
相关产品推荐

