【Auroraの役割(パフォーマンス最適化)】
目次
🔍 1. 結論
💎 一言でいうと Amazon Aurora の高性能の秘密は、「通常のMySQLの最大5倍、PostgreSQLの最大3倍のパフォーマンス」 と、「最大15台のリードレプリカ(読み取り専用レプリカ)」 による圧倒的な読み取り負荷のスケールアウト能力です。
- 読み取り(Read)が多いワークロードに対して、リーダーエンドポイントを使って数十台のレプリカへ負荷を分散する。
- Aurora Serverless を使えば、予測不可能なスパイクにも自動でキャパシティ(ACU)がスケールする。
📈 2. SAAで出やすいポイント
- リードレプリカ(最大15台): 通常のRDS(最大5台)の3倍のレプリカを作成できます。しかもストレージ層が共通であるため、マスターに書き込まれたデータがレプリカに反映されるまでの遅延(レプリカラグ)が 10ミリ秒(ミリ秒単位) と非常に小さいのが特徴です。
- カスタムエンドポイント: 「重い分析クエリ用のレプリカ2台」と「通常のWeb画面用のレプリカ5台」のように、特定のインスタンス群に対して専用のURL(エンドポイント)を作り、用途別にトラフィックを分散してパフォーマンスを最適化できます。
- Aurora Serverless: トラフィックが1日数時間しか発生しないシステムや、いつバズるか分からないシステムにおいて、インフラのサイズ(CPU/メモリ)を意識せず、秒単位で自動的にスケールアップ・ダウンしてくれます。
🗝 3. キーワードでの判断
| 問題文のキーワード | 疑う機能・構成 |
|---|---|
| 📊 「データベースの読み取り負荷が高すぎる」「15台のレプリカが必要」 | Aurora リードレプリカ |
| ⚡ 「レプリカラグ(同期遅延)をミリ秒単位に抑えたい」 | Amazon Aurora |
| 📈 「トラフィックが予測不能で、DBのキャパシティを自動調整したい」 | Aurora Serverless |
| 🎯 「特定のレプリカだけに分析用の重いクエリを流したい」 | Aurora カスタムエンドポイント |
⚠️ 4. ひっかけポイント
🚫 よくある誤答パターン – 「Auroraの書き込み(Write)パフォーマンスをスケールアウトする」 → リードレプリカはあくまで「読み取り(Read)」のスケールアウトです。書き込みを複数ノードで同時に行いたい場合は Aurora Multi-Master という特殊な構成か、DynamoDB などのNoSQLを検討します。 – 「リードレプリカでElastiCacheを代替する」 → 読み取り負荷を下げる点では同じですが、ミリ秒以下の「マイクロ秒」の応答が必要なキャッシュ要件の場合は ElastiCache が正解です。
💡 5. 覚え方
🧠 暗記ショートカット – Auroraのリードレプリカ = 「15人の超優秀なコピーロボット」。 – 本体のメモ(ストレージ)を全員で覗き込んでいるので、タイムラグ(数ミリ秒)なしで瞬時に同じ答えをお客さんに返せる。
📚 6. 関連サービス
| アイコン | サービス名 | 高性能化における比較 |
|---|---|---|
| 🐘 | Amazon RDS | Auroraよりレプリカ作成数の上限が低く(5台)、レプリカラグも大きくなりがち |
| ⚡ | Amazon ElastiCache | Auroraの前に置いて、同じSQLの検索結果をメモリに保持しさらに高速化する |
🗒️ 7. Obsidian管理メモ
- 見返すタイミング: DBのパフォーマンス最適化、Serverless DBの学習時
- 関連ノート候補:
AWS_SAA_Aurora_Performance,AWS_SAA_Database_Scaling
8. HTMLファイル名:
AWS_高性能設計_Aurora.html