
Amazon Aurora DSQLを検討してみた - 次世代分散データベースの可能性
目次
はじめに
個人開発としてLambdaとRDSを使用しています。この構成だと、どうしてもVPCを構築することになります。
LambdaはVPCで動かさないといけないし、VPCから外に出るにはNATGWやVPCエンドポイントが必要になります。
NATGWは月額役7000円ぐらいするので、この費用負担をどうにかしたいと考えました。
調べると、サーバレスでSQLを使用できるサービスがありました。それがAmazon Aurora DSQLです。
Aurora DSQLとは
Amazon Aurora DSQLは、AWSが提供するサーバーレス分散SQLデータベースです。PostgreSQL互換でありながら、従来のPostgreSQLとは大きく異なるアーキテクチャを採用しています。
主な特徴
- 事実上無制限のスケール: ワークロード需要に応じて自動スケーリング
- 高可用性: 単一リージョンで99.99%、マルチリージョンで99.999%
- PostgreSQL互換: 既存のPostgreSQLアプリケーションとの高い互換性
- ゼロインフラ管理: 完全サーバーレス、パッチ適用や容量計画が不要
- マルチリージョン対応: アクティブ/アクティブ構成でグローバル展開
個人開発での課題とDSQLへの期待
従来のLambda + RDS構成の問題点
個人開発でLambdaとRDSを組み合わせる場合、以下のような課題に直面していました:
VPC関連のコスト
- NAT Gateway: 月額約7,000円
- VPCエンドポイント: サービスごとに追加費用
- データ転送料: VPC内外の通信で発生
運用の複雑さ
- VPCのサブネット設計
- セキュリティグループの管理
- RDSのバックアップ・メンテナンス
スケーラビリティの限界
- RDSのインスタンスサイズ変更にはダウンタイムが発生
- 読み込み負荷はリードレプリカで対応できるが、書き込みは単一インスタンス
Aurora DSQLで解決できること
Aurora DSQLを採用することで、これらの課題を解決できる可能性があります:
コスト最適化
従来構成(月額):
- RDS (db.t3.micro): 約2,000円
- NAT Gateway: 約7,000円
- VPCエンドポイント: 約1,000円
合計: 約10,000円
Aurora DSQL:
- 使用した分だけの従量課金
- VPC関連コストが不要
- アイドル時の課金なし
移行検討のポイント
コスト試算
個人開発の典型的な使用パターンで試算:
月間トラフィック想定
- API呼び出し: 10万回/月
- データ容量: 1GB
- データ転送: 5GB
コスト比較
Aurora DSQL (試算):
- リクエスト: $0.10 × 100,000 = $10
- ストレージ: $0.20 × 1GB = $0.20
- データ転送: $0.02 × 5GB = $0.10
合計: 約$10.30 (約1,500円)
従来構成:
- 前述の通り約10,000円/月
大幅なコスト削減が期待できます。
## で、結論
今回は機能面で見送りました。
DSQLは外部キーを使用できないのです。現状のテーブルは外部キーを多用しているので、単純移行とはいかないことがわかったのです。(ドキュメント読めばわかるけど、、、)
この記事の情報は2025年9月14日時点でのものです。最新情報についてはAWS公式ドキュメント をご確認ください。
