導入
「RDSで十分」なシステムが成長すると、読み取り負荷の増大・急な負荷変動・リージョン障害への備えという壁にぶつかります。Auroraは、こうした成長痛に応える3つの拡張機能を持っています。
説明
Amazon Aurora はAWS独自のリレーショナルデータベースエンジンで、MySQL/PostgreSQL互換を保ちながら、クラウドネイティブな拡張性を持ちます。
| 拡張機能 | 何を解決するか |
|---|---|
| Aurora リードレプリカ | 読み取りが多いワークロードで、読み取りを複数のレプリカに分散する(最大15台) |
| Aurora Serverless v2 | 負荷に応じて秒単位で自動スケール、予測不能なトラフィックでも過剰プロビジョニング不要 |
| Aurora Global Database | 1つの書き込みリージョンと複数の読み取りリージョンで、1秒未満のレプリケーション遅延を実現 |
flowchart LR
subgraph R1["プライマリリージョン"]
W["書き込み<br/>プライマリインスタンス"] --> RR["読み取りレプリカ<br/>(最大15台)"]
end
W -->|"レプリケーション<br/>1秒未満"| R2["セカンダリリージョン<br/>(読み取り専用)"]
R2 -.->|"リージョン障害時に昇格"| W2["新プライマリへ切替"]
Aurora Global Databaseは、**リージョン障害からの事業継続(ドメイン2で問われるDR設計)**の中核サービスの1つです。通常時はセカンダリリージョンを読み取り専用として活用し、プライマリリージョンに障害が起きたときは手動(または管理された切替)でセカンダリを書き込み可能に昇格させ、RTO/RPOの短いDRを実現します。
- 「読み取りが急増している」→ リードレプリカを追加
- 「トラフィックの予測が難しく、常時プロビジョニングは無駄」→ Aurora Serverless v2
- 「別リージョンでの災害対策、かつRPOを1秒未満に抑えたい」→ Aurora Global Database
読んでみよう
RDSの単純なMulti-AZ配置と、Auroraのリードレプリカ・Global Databaseは役割が違います。Multi-AZは同一リージョン内の可用性、リードレプリカは読み取りのスケール、Global Databaseはリージョンをまたいだ災害対策、と3つの目的を混同しないようにしましょう。