将数据从MariaDB RDS表导出到S3-数据管道失败

时间:2018-10-08 12:14:27

标签: amazon-web-services amazon-s3 amazon-rds amazon-data-pipeline

我的目标是将大型(〜300GB)表导出到S3中的csv / tsv进行长期存储(基本上,如果有人希望在以后的几年中查看它,可以,但不是必须的)在线提供)。 我需要复制一张表,而不是整个数据库。

快速浏览一下之后,看起来好像是Data Pipeline。可悲的是,数据管道因No space left on device而失败,这似乎是因为它不支持分段上传(https://forums.aws.amazon.com/message.jspa?messageID=730566

AWS支持建议我们增加EBS根卷大小,这是通过创建自定义AMI来实现的。

我也尝试过设置带有sqoop的自己的linux机器,但是不幸的是,运行查询一两天后,挂起了。

将一个表从专用RDS转储到S3的最简单方法是什么?

1 个答案:

答案 0 :(得分:1)

我建议您启动具有巨大EBS容量(例如400 GB)的Micro EC2实例。然后编写一个简单的shell脚本(两行代码)以导出(使用mysqldump)每个表,然后使用aws s3 cp命令将其复制到S3。您需要注意的是,表是否正在实时更新。那么使用此方法可能会导致S3上的数据存储丢失。

首先从较小的表开始,以确保它可以工作。 mysqldump适用于非常大的表。