将数据从 Amazon Aurora 同步到 Redshift

Sync data from Amazon Aurora to Redshift

我正在尝试在 AWS Aurora 和 Redshift 之间设置同步。实现此同步的最佳方法是什么?

可能的同步方式有:-

  1. 查询 table 以查找 table 中的更改(因为我只进行插入,更新无关紧要),将这些更改导出到 S3 中的平面文件存储桶并使用 Redshift 复制命令插入到 Redshift。

  2. 使用 python publisher 和 Boto3 将更改发布到 Kinesis 流中,然后在 Firehose 中使用此流,我可以从那里直接复制到 Redshift。

  3. 使用 Kinesis Agent 检测 binlog 的变化(是否可以使用 Kinesis Agent 检测 int binlog 的变化)并将其发布到 Firehose 并从那里复制到 Firehose。

我还没有探索过 AWS Datapipeline。

正如@Mark B 所指出的,AWS Database Migration Service 可以在数据库之间迁移数据。这可以作为一次性练习完成,也可以 运行 连续完成,保持两个数据库同步。

文档显示 Amazon Aurora can be a source and Amazon Redshift can be a target.

您还可以使用联合查询:https://docs.aws.amazon.com/redshift/latest/dg/federated-overview.html