【发布时间】:2018-11-21 22:41:54
【问题描述】:
我的任务是将 MySQL 数据库迁移到 amazon redshift。目前我正在尝试通过
1) 将表格转换为 CSV 文件
2) 将它们存储在 S3 中
3) 在redshift中创建一个表
4) 使用 COPY 命令将数据从 S3 传输到 redshift
我正在使用 Python 尝试自动执行此过程,并使用 boto3 对前往 S3 的数据进行加密。
但是,按照我现在的流程,我必须在 Redshift 中为 S3 中的每个 csv 手动创建一个表。由于我最终要移动大量数据,这将非常低效。
我是否可以运行代码来检测架构并创建表,而无需在每次我想加载新数据时进入并更改 CREATE TABLE 语句?
【问题讨论】:
-
您的问题不清楚。您是说每次加载数据时表架构都会发生变化吗?每个表只复制一个 CSV 文件?
-
您可能无法将mysql_fdw 之类的扩展安装到数据库中,否则您可以使用
IMPORT FOREIGN SCHEMA。 -
试试 AWS DMS 它适用于这个用例
标签: python mysql postgresql amazon-web-services amazon-redshift