目前我正在收听来自AWS Kinesis的活动并将其写入S3。然后我使用AWS Glue和Athena查询它们。
有没有办法将这些数据(可能带有一些转换)导入RDS实例?
答案 0 :(得分:5)
关于该任务,有几种一般方法。
将GLUE连接到RDS时要记住几件事(主要是在网络方面:
有关目标关系数据库的代码的一些示例,请参阅以下tutorials
答案 1 :(得分:1)
Postgres 的一种方法:
在 Postgres 中安装 S3 扩展:
psql=> CREATE EXTENSION aws_s3 CASCADE;
在 Athena 中运行查询并在 S3 中找到 CSV 结果文件位置(S3 输出位置在 Athena 设置中)
在 Postgres 中创建表格
从 S3 导入:
SELECT aws_s3.table_import_from_s3(
'newtable', '', '(format csv, header true)',
aws_commons.create_s3_uri('bucketname', 'reports/Unsaved/2021/05/10/aa9f04b0-d082-328g-5c9d-27982d345484.csv', 'us-east-1')
);
如果要将空值转换为 null,可以使用:(format csv, FORCE_NULL (columnname), header true)
https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/PostgreSQL.Procedural.Importing.html