Amazon DynamoDB
開発者ガイド (API バージョン 2012-08-10)

DynamoDB グローバルテーブル

Amazon DynamoDB グローバルテーブルは、マルチリージョンにマルチマスターデータベースをデプロイするための完全マネージド型のソリューションです。独自のレプリケーションソリューションを構築および管理する必要はありません。グローバルテーブルを作成する際、そのテーブルの利用を許可する AWS リージョンを指定します。DynamoDB は、これらのリージョンに同一のテーブルを作成するのに必要なすべてのタスクを実行し、変更中のデータをすべてのテーブルに伝達します。

グローバルテーブルのユースケースについて説明するために、3 つの地理的領域 (米国東海岸、米国西海岸、西欧) にまたがる大規模な顧客ベースがあるとします。ユーザーは、アプリケーションの使用中に自分のプロファイル情報を更新する必要があります。このような要件に対応するには、CustomerProfiles という 3 つの同一の DynamoDB テーブルを 3 つの AWS リージョンにそれぞれ作成する必要があります。この 3 つのテーブルは、互いに完全に独立しています。1 つのテーブルのデータを変更しても他のテーブルに反映されることはありません。マネージド型のレプリケーションソリューションを使用しなくても、コードを書き込んで、このテーブル間のデータ変更をレプリケートすることができます。ただし、これを行うには時間も労力もかかります。

独自のコードを書き込む代わりに、リージョン固有の 3 つの CustomerProfiles テーブルから構成されるグローバルテーブルを作成します。DynamoDB は、これらのテーブル間のデータ変更に自動的にレプリケートされるため、1 つのリージョンの CustomerProfiles データを変更すると、他のリージョンにシームレスに伝達されます。さらに、いずれかの AWS リージョンが一時的に利用できない場合は、顧客は他のリージョンの同じ CustomerProfiles データにアクセスできます。

DynamoDB グローバルテーブルは、グローバルに分散したユーザーがいる場合など、大規模にスケールされたアプリケーションを使用する場合に最適です。このような環境では、ユーザーは、非常に高速なアプリケーションパフォーマンスを期待します。グローバルテーブルでは、マルチマスターレプリケーションを世界中の AWS リージョンに自動的に行うことができます。ユーザーがどこにいても、低レイテンシーでデータを提供することができます。

使用可能な AWS リージョンおよび料金については、「Amazon DynamoDB 料金表」を参照してください。