将数据从AWS Athena导入RDS实例

Bed*_*mez 1 etl amazon-s3 amazon-rds amazon-athena

目前,我正在侦听来自AWS Kinesis的事件并将其写入S3。然后,我使用AWS Glue和Athena查询它们。

有没有办法将数据(可能经过某种转换)导入RDS实例?

Zer*_*odf 6

关于该任务有几种通用方法。

  1. 将数据和Athena查询读取到自定义ETL脚本中(使用JDBC连接)并加载到数据库中
  2. 将保存数据的S3存储桶安装到文件系统(可能使用s3fs-fuse),使用自定义ETL脚本读取数据,然后将其推送到RDS实例
  3. 使用AWS CLISDK将要上传到RDS实例的数据下载到文件系统,在本地进行处理,然后推送到RDS
  4. 如您建议的那样,使用AWS Glue将数据从Athena导入到RDS实例。如果您正在构建与AWS紧密耦合的应用程序,并且您正在使用Kinesis和Athena,那么这样的解决方案是有意义的。

将GLUE连接到RDS时,需要牢记一些注意事项(主要是在网络方面:

  1. 确保启用DNS主机名的VPC托管目标RDS实例
  2. 您需要在与目标RDS实例关联的安全组中设置一个自引用规则

有关面向关系数据库的代码示例,请参见以下教程