Aurora Serverless 使ってみた

Aurora Serverless とは

サーバーレスな RDB。

  • DB アクセス時に起動し、アイドル時に停止する
    • 最小設定では 5 分間未使用時に停止
    • 停止後の初回アクセス時に (停止状態から起動するまでに) 25 秒前後かかる
  • 自動的にスケールアップ・ダウン
    • サーバーレスなので、インスタンスタイプみたいな設定はない
    • 性能 (ACU: Aurora Compute Units) の上限、下限は設定可能
  • 課金についても、主に ACU と起動時間に応じてなされる
    • その他、ストレージ使用量や IO 料金もかかる

参考: Amazon Aurora – 自動スケーリングサーバーレスデータベースサービス – AWS

起動時の設定

といっても、設定方法については普通の RDS と大差ない。

「インスタンス」画面、もしくは「クラスター」画面にある「データベースの作成」ボタンを押下。
(ちなみに、作成した DB は「クラスター」画面のほうに表示される)

Aurora → MySQL5.6 との互換 → Serverless を選択。

「キャパシティーの設定」で性能の上限・下限を設定。 停止するアイドル時間もここで設定できる。

その他設定については、通常の RDS とあまり違いはないのかと。

使ってみた

たしかに、停止状態 (The DB cluster is being resumed.) からの起動まで (The DB cluster is resumed.) には 20 〜 30 秒かかった。
その他はまぁ……普通の RDB ですわ。

自動スケールアップは試していないし、ベンチマークを取ったわけではないが、256 ACU (Ram: 488 GB) などのすんごい性能も選べるくらいなので、 おそらく、一度起動してしまえば普通の RDS よりすんごく遅いなんてことはないのではないだろうか。

CloudWatch メトリクスの ServerlessDatabaseCapacity から ACU の遷移を確認できる。