次の方法で共有


Azure Cosmos DB を使用してデータをグローバルに分散させる

適用対象: NoSQL MongoDB カサンドラ グレムリン

現在のアプリケーションには、優れた応答性と、常時接続が求められます。 待機時間の短縮と高可用性を実現するには、これらのアプリケーションのインスタンスをそのユーザーの近くにあるデータ センターにデプロイする必要があります。 これらのアプリケーションは、通常は複数のデータ センターにデプロイされ、グローバル分散型と呼ばれています。 グローバル分散型アプリケーションには、アプリケーションでそのユーザーの近くにあるデータのコピーを操作できるようにするために、世界中のデータを透過的にレプリケートできる、グローバルに分散されたデータベースが必要です。

Azure Cosmos DB は、ユーザーのデータベースのローカル レプリカからデータの読み取りと書き込みを行うことができる、グローバルに分散されたデータベース システムです。 Azure Cosmos DB では、Azure Cosmos DB アカウントに関連付けられている全リージョンに対して透過的にデータがレプリケートされます。 待機時間が短く、スループットの柔軟なスケーラビリティ、データ整合性のための明確に定義されたセマンティクス、高可用性を提供するように設計されています。 つまり、アプリケーションが世界中のどこでも高速な応答時間を必要とし、常にオンラインである必要があり、スループットとストレージの無制限かつ柔軟なスケーラビリティが必要な場合は、Azure Cosmos DB 上にアプリケーションを構築する必要があります。

グローバルに分散し、どの Azure リージョンでも利用できるようにデータベースを構成することができます。 待機時間を短縮するには、データをユーザーの近くに配置します。 どのリージョンを選択するかは、アプリケーションのグローバル リーチと、ユーザーの所在地によって決まります。 Azure Cosmos DB では、グローバルに分散された Azure Cosmos DB データベースとコンテナーの単一のシステム イメージが利用できるようになっており、アプリケーションからは、読み取りと書き込みをローカルに実行することができます。

Azure Cosmos DB のサーバーレス アカウントは 1 つの Azure リージョンでのみ実行できます。 詳細については、「サーバーレス リソースの使用」を参照してください。

Azure Cosmos DB に関してご利用のアカウントに関連付けられるリージョンは、いつでも追加したり削除したりすることができます。 リージョンの追加や削除のために、アプリケーションを一時停止したり再デプロイしたりする必要はありません。 Azure Cosmos DB は、お客様が利用できる 5 つの異なる Azure クラウド環境のすべてで利用できます。

  • Azure パブリック クラウドは、グローバルに利用できます。

  • 21Vianet が運営する Microsoft Azure は、中国最大のインターネット プロバイダーの 1 つである Microsoft と 21Vianet の間の独自のパートナーシップを通じて利用できます。

  • Azure Germany では、データ保護受託者モデルに沿ってサービスが提供され、お客様のデータは、ドイツ国内でデータ保護受託者の役目を務める T-Systems International GmbH (Deutsche Telekom の子会社) の管理下で、ドイツ国外に移転されないことが保証されます。

  • Azure Government は、米国内の 4 つのリージョンで米国政府機関とそのパートナーが利用できます。

  • 米国国防総省 (DoD) 向け Azure Government は、米国内の 2 つのリージョンで米国国防総省が利用できます。

高可用性デプロイ トポロジを示す図。

グローバル分散の主な利点

グローバルなアクティブ/アクティブ アプリの構築。 そのまったく新しいマルチリージョン書き込みレプリケーション プロトコルにより、すべてのリージョンで書き込みと読み取りの両方がサポートされます。 マルチリージョン書き込み機能には次の利点もあります。

  • 無制限のエラスティック書き込みと読み取りのスケーラビリティ。

  • 99.999% 世界中での読み取りおよび書き込みの可用性。

  • 99 パーセンタイルで 10 ミリ秒未満の処理性能が保証された読み取りと書き込み。

    Azure Cosmos DB アカウントとの間でリージョンを追加または削除する場合、アプリケーションを再デプロイまたは一時停止する必要はありません。常に高可用性が維持されます。

応答性に優れたアプリを構築できる。 データベース用に選択したすべてのリージョンに対し、アプリケーションでほぼリアルタイムの読み取りと書き込みを実行できます。 Azure Cosmos DB は、選択された一貫性レベルを保証しながら、リージョン間のデータ レプリケーションを内部的に処理します。

可用性の高いアプリを構築する。 世界の複数のリージョンでデータベースを実行することで、データベースの可用性が向上します。 あるリージョンが利用できない状態になった場合は、自動的に他のリージョンによってアプリケーションの要求が処理されます。 複数リージョンのデータベースを対象にした読み取りと書き込みに関して、Azure Cosmos DB は 99.999% の可用性を備えています。

リージョン障害時にビジネス継続性を維持する。 Azure Cosmos DB では、リージョン障害時のサービス マネージド フェールオーバーがサポートされています。 リージョン障害時にも、Azure Cosmos DB では、その待機時間、可用性、一貫性、スループットの SLA が引き続き維持されます。 ご利用のアプリケーション全体で高い可用性を確保するのに役立つように、Azure Cosmos DB には、リージョン障害をシミュレートするための手動フェールオーバー API が用意されています。 この API を使用することで、日常的なビジネス継続性の訓練を実施することができます。

読み取りと書き込みのスループットをグローバルにスケーリングします。 すべてのリージョンを書き込み可能にして、読み取りと書き込みを世界規模でエラスティックにスケーリングできます。 Azure Cosmos DB のデータベースまたはコンテナーに対してアプリケーションで構成したスループットが、Azure Cosmos DB アカウントに関連付けられているすべてのリージョンにプロビジョニングされます。 プロビジョニング スループットは、金銭的な補償を伴う SLA によって保証されます。

明確に定義された複数の一貫性モデルの中から選択する。 Azure Cosmos DB のレプリケーション プロトコルでは、明確に定義された、実際的かつ直感的な 5 つの一貫性モデルが提供されています。 各モデルには、一貫性とパフォーマンスのトレードオフがあります。 これらの一貫性モデルを使用することで、グローバル分散アプリケーションを容易に構築することができます。

次のステップ