🗞️

[AWS]Aurora RDS の Export to S3を試してみた

2022/10/31に公開

背景

ゴリゴリ系エンジニアのパイオニア、pageoです。
先日、AWS公式より「Amazon Aurora supports cluster export to S3」という題Auroraに関するアップデートニュースがありました。
https://aws.amazon.com/jp/about-aws/whats-new/2022/10/amazon-aurora-cluster-export-s3/

上記のリンクを見ていただければわかるのですが、リリース内容を適当に意訳すると"Auroraはスナップショット取らんでも、直接S3にApache Parqet形式でデータエクスポートできるようになったべよ"とのこと。

なんと!!これは大変ありがたい!!

S3にデータエクスポートする場合、今までは以下の画像のように「Aurora RDSでスナップショット作成 → EventBridgeでスナップショット作成完了を検知 → Lambda起動 → LambdaでS3へのExport Taskを起動 → 特定S3 Bucketにデータエクスポート」を自前で実装する必要がありました

今回のアップデートで、上記のフローが以下の図のように簡潔なフローのみで完了できるようになりました!
ありがたや、、、🙏

ということで、今回の記事では実際にAuroraからS3に直接Exportできる機能を試してみたいと思います。

実践

該当のRDSを選択し、Actionsから"Export to Amazon S3 - new"を押下してみます。
(これを見つけるのに5分ほどかかりました、、)

以下がExport to Amazon S3の設定値入力ページです

設定できる値は以下です(SnapshotからのExport Taskの設定と同じですね)

  • Export identifier
    • Export名の設定
  • Exported data
    • "All" or "Partial"を選択
      • All: 全てのテーブルをエクスポート
      • Prtial: 特定のテーブルのみエクスポート
  • S3 destination
    • S3 Bucket
      • エクスポート先のS3 Bucketを指定
    • S3 Prefix
      • エクスポート先のPrefix名を設定
  • IAM role
    • エクスポート先S3 Bucketにアクセスする際のIAM Roleを設定
  • Encryption
    • エクスポート時のデータ暗号化に使うKMS Keyを選択

実際に"Export to Amazon S3"ボタンを押下してエクスポートしてみると、

こちらの画面に遷移します。
"Status"がStartingになっているのが確認できます。

該当DBを選択して"Maintenance & backups"タブを開くと下の方に、"Exports In Amazon S3"が追加されていることが確認できます。

20~30分後(データ量に依る)にエクスポート先のS3 Bucketをみてみると、
以下のようにApache Prquet形式でエクスポートされているのが確認できます。
(SnapshotからのExport Taskとアウトプットの形式(フォルダ構成/アウトプットファイルなど)が同じですね)

最後に

痒いところも見逃さずに継続的にアップデートしてくれるのがAWSの良いところですよね。
今後も継続的に細かいアップデートにアンテナ張って、有用なものがあれば適宜記事を書いていこうと思います。

Discussion