用于将数据从MySql RDS复制到Redshift的复制管道

问题描述 投票:1回答:1

我的问题是在这里创建一个复制管道,该复制管道将表和数据从MySql RDS复制到Redshift,并且我不能使用任何托管服务。另外,RDS中的任何新更新也应复制到redshift表中。

查看了许多解决方案后,我对以下步骤有所了解:

  1. 从MySql RDS创建平面文件/ CSV并将它们保存在S3中。
  2. 使用Redshift的COPY命令将数据复制到临时表中,然后最终将其保存到主表中。
  3. 现在,对于更新部分,每次我将CSV推送到S3并将重复步骤2。

所以,我只是想确认上述方法是否合适?同样,每次发生更新时,旧数据将被完全删除并替换为新数据,还是可能仅更新必要的记录。如果是,那么如何?

任何帮助将不胜感激。预先感谢。

mysql amazon-redshift amazon-rds database-replication data-pipeline
1个回答
0
投票

是的,上面的策略还不错,good。我在生产system中使用了它,并且效果很好,尽管您必须仔细制定该策略以确保它可以解决用例effectivelyefficiently

这里有几点,我指的是有效和高效。

  1. 确保您具有最有效的方式来标识要推送到Redshift的记录,这意味着使用包括CPUMemory的优化查询来标识潜在的记录。
  2. 请确保使用优化的方式将包含数据大小优化的标识发送到redshift,以便它使用最小的storagenetwork bandwidth。例如压缩并压缩gzip CSV文件,以使其在S3存储中的大小最小,并节省network带宽。
  3. 尝试以并行执行的方式运行copy redshift查询。

希望这会有所帮助。

© www.soinside.com 2019 - 2024. All rights reserved.