Amazon AuroraのS3エクスポート機能
AuroraのS3エクスポート機能は、DBクラスターの現在のデータやスナップショットのデータをS3にApache Parquet形式で出力する機能です。
Apache Parquet形式は、スキーマ情報を内包している・列志向で分析用途にも適している・高効率な圧縮が可能・複雑なデータ構造にも対応しているといった特徴を備えたデータ形式です。AthenaやRedshift、あるいはBigQueryへの取り込みに利用することができ、これらを使ったDB内のデータ分析が可能になります。
高効率さについての実験として、試しに手元の64GBのクラスタースナップショットをS3エクスポートしてみたところ、出力されたParquetファイルの合計サイズは約4GBと、なんと1/16にも圧縮されました。特に毎日何TBもの大容量データをリージョン外に転送するようなケースではネットワーク転送費が月百万円オーダーになるため、圧縮効率も重要になってきます。
そんなS3エクスポートにも欠点はあります。Aurora自身はParquet形式のデータインポート機能を備えておらず、エクスポートしたデータを読み込めません。*1
とはいえ書き出したデータをAuroraに復元できると有効活用できるシーンもあるため、これをAWS Glueを使うことで簡単に実現できないか検討してみました。

*1:「Aurora S3エクスポート 復元」などのキーワードで検索すると無慈悲にも「復元はできない」と書かれた記事がヒットします。