グローバルテーブル - マルチアクティブ、マルチリージョンレプリケーション
Amazon DynamoDB グローバルテーブルは、フルマネージドで、マルチリージョン、マルチアクティブなデータベース機能で、グローバルにスケールされたアプリケーション向けに、使いやすいレプリケーションと高速なローカルの読み込みと書き込みのパフォーマンスを提供します。
グローバルテーブルは、独自のレプリケーションソリューションを構築および維持することなく、AWS リージョン間、オプションで AWS アカウント間で DynamoDB テーブルデータを自動的にレプリケートします。グローバルテーブルは、マルチリージョンデプロイを通じてビジネス継続性と高可用性を必要とするアプリケーションに最適です。グローバルテーブルのレプリカは、読み取りと書き込みの両方を処理できます。アプリケーションは、リージョンでアプリケーション処理が中断された場合にトラフィックを別のリージョンに移行することで、目標復旧時点 (RPO) を低くまたはゼロにして高い回復力を実現できます。グローバルテーブルは、DynamoDB が利用可能なすべてのリージョンで使用できます。
整合性モード
グローバルテーブルを作成するときに、その整合性モードを設定できます。グローバルテーブルは、マルチリージョンの結果整合性 (MREC) およびマルチリージョンの強力な整合性 (MRSC) の 2 つの整合性モードをサポートしています。
グローバルテーブルの作成時に整合性モードを指定しない場合、グローバルテーブルはデフォルトでマルチリージョンの結果整合性 (MREC) になります。グローバルテーブルには、異なる整合性モードで設定されたレプリカを含めることはできません。グローバルテーブルの整合性モードを作成後に変更することはできません。
アカウント設定
DynamoDB は現在、それぞれ異なるアーキテクチャパターン用に設計された 2 つのグローバルテーブルモデルをサポートしています。
-
同一アカウントグローバルテーブル – すべてのレプリカは 1 つの AWS アカウント内で作成および管理されます。
-
マルチアカウントグローバルテーブル – レプリカは、共有レプリケーショングループに参加している間、複数の AWS アカウントにデプロイされます。
同一アカウントモデルとマルチアカウントモデルの両方で、マルチリージョン書き込み、非同期レプリケーション、最後の書き込みを優先による競合解決、および同じ請求モデルがサポートされます。ただし、アカウント、アクセス許可、暗号化、テーブルガバナンスの管理方法は異なります。
MRSC 用に設定されたグローバルテーブルは、同じアカウント設定のみをサポートします。
AWS マネジメントコンソールを使用してグローバルテーブルを設定できます。グローバルテーブルは、既存の DynamoDB API を使用してテーブルにデータを読み書きするため、アプリケーションの変更は必要ありません。プロビジョニングまたは使用したリソースに対してのみ料金が発生します。前払い料金や契約はありません。
同一アカウントおよびマルチアカウントグローバルテーブルの比較
| プロパティ | 同一アカウントグローバルテーブル | マルチアカウントグローバルテーブル |
|---|---|---|
| 主なユースケース | 単一 AWS アカウント内のアプリケーションのマルチリージョン回復性 | 異なるチーム、異なるビジネスユニット、またはアカウント間の強力なセキュリティ境界が所有するアプリケーションのための、マルチリージョン、マルチアカウントレプリケーション |
| アカウントモデル: | すべてのレプリカは 1 つの AWS アカウントで作成および管理されます | 同じデプロイ内の複数の AWS アカウントに作成されたレプリカ |
| リソース所有権 | 1 つのアカウントがテーブルとすべてのレプリカを所有します | 各アカウントはローカルレプリカを所有し、レプリケーショングループはアカウントにまたがります |
| サポートされているバージョン | グローバルテーブルバージョン 2019.11.21 (現行) およびバージョン 2017.11.29 (レガシー) | グローバルテーブルバージョン 2019.11.21 (現行) |
| コントロールプレーンオペレーション | テーブル所有者アカウントを使用してレプリカを作成、変更、削除します | 分散コントロールプレーンオペレーション: アカウントがレプリケーショングループに参加または退出します |
| データプレーンオペレーション | リージョンあたりの標準 DynamoDB エンドポイント | アカウント/リージョンあたりのデータプレーンアクセス、レプリケーショングループ経由のルーティング |
| セキュリティ境界 | 単一の IAM と KMS の境界 | アカウントごとに異なる IAM、KMS、請求、CloudTrail、ガバナンス |
| 最適な用途 | テーブルの一元的な所有権を持つ組織 | フェデレーティッドチーム、ガバナンスの境界、またはマルチアカウント設定を持つ組織 |