我目前正在使用 Amazon Redshift 存储每天推送到 Amazon S3 中的存储桶的 50 - 100 GB(即数百万行)制表符分隔文件的聚合数据。
Redshift 通过提供一个copy
可以直接针对 S3 存储桶的命令来批量加载数据,从而简化了这一过程。
我想将 Amazon Aurora RDS 用于同样的目的。目前关于 Aurora 的文档最多。有没有办法直接从 S3 批量加载到 Aurora?
据我所知,MySqlLOAD DATA INFILE
需要磁盘上文件的路径,我想我可以通过将 tsv 下载到 AWS 实例并从那里运行命令来解决这个问题,但这并不理想。
我还尝试将 tsv 读入内存并构造多个insert
语句。这显然是缓慢而笨重的。
想法?
2016 年 11 月更新:
从 Aurora 1.8 版开始,您现在可以使用以下命令批量加载 S3 数据:
LOAD DATA FROM S3
或者
LOAD XML FROM S3
2018 年 7 月更新:
更新了 AWS 文档链接。大喊马克福尔摩斯抓住了这一点。