現在、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 ドキュメントのリンクを更新しました。それを捕まえたマーク・ホームズに叫びます。