Atlas は、高可用性、低レイテンシ、規制へのコンプライアンスを確保するために、データをグローバルに分散することをサポートしています。データの分散を慎重に計画することで、データ主権に関するコンプライアンス要件、例えば EU の GDPR(General Data Protection Regulation)法を確実に満たすことができます。データ主権を確保する必要があるリージョンに 1 つまたは複数のクラスターを設定し、適切なゾーンまたは地理的シャードキーを使用して特定のデータを正しいクラスターまたはノードに書き込みするようにアーキテクチャを構成できます。
次の図は、グローバルに分散されたトポロジーを示しています。このトポロジーでは 3 地域のそれぞれに 1 つずつ、合計 3 クラスターがあります。各クラスターでは、3 リージョンにわたって 5 ノードが同様に地域に分散しています。
このトポロジーにより、アプリケーションはリージョン固有のデータをそのリージョンの適切なクラスターにのみ送信することができます。したがって、GDPR の対象となる EU データは、アプリケーションによって EU にあるノードを持つクラスター 2 に書き込まれます。同様に、APAC 固有のデータはクラスター 3 にのみ書き込まれ、そのすべてのノードは APAC のロケーションに配置されています。グローバルデータ、またはリージョンに固有でないデータは、3 クラスターすべてに書き込まれます。これにより、いずれか 1 つのクラスターの停止時でもアプリケーションの他の部分に影響を与える可能性がなくなります。

大規模なグローバルエンタープライズまたはグローバルアプリケーションにおいて、アーキテクトは複数の地域や大陸にまたがってクラスターを配置したいと考える場合があります。一般的に、ベストプラクティスは各地域に個別のマルチリージョンクラスターを配置することです。これにより、アプリケーションは単一のリージョンで高可用性を確保し、データ主権の要件を簡単に保つことができます。プロキシレイヤーまたはリダイレクトレイヤーは、リクエストの送信元を特定し、正しい地域に割り当てる必要があります。
カスタマーは Atlas のマルチリージョン配置を活用して複数の地域に配置できますが、データ主権要件に準拠するための複雑さを避ける傾向はありません。レプリカセットは、すべてのデータをすべてのセカンダリ ノードにネイティブに複製しますが、GDPR のような主権要件を満たす必要があるユーザー中心のデータには適していません。このアーキテクチャは、主権要件がなく、グローバルに同一の公開参照データにのみ使用することをお勧めします。クラスターは、主権要件に準拠するためにデータを保存するリージョン情報を含むシャードキーでシャーディングできます。Atlas には、地理的ゾーンに対応するシャードキーの設定を簡素化するグローバルクラスターと呼ばれる機能があります。しかし、実際には、エンタープライズは同じアプリケーションに対して異なるリージョンに別々のクラスターを配置することを選択します。そうすることで、アプリケーションコードが地理的ゾーンごとに正しいシャードキーを適切に設定していることを確認する際の複雑さに対処する必要がなくなります。
グローバルクラスター
グローバル Atlas クラスターは最も複雑な配置で使用されるため、非常に慎重な計画が必要です。ほとんどのケースでは、マルチリージョン配置パラダイムでニーズを満たすことができます。
次の場合には、グローバル配置戦略を検討することができます。
1 つのグローバル接続文字列が必要です。
すべてのクラスターやシャードにわたってグローバル集計を実行する必要があります。
1 つの論理クラスター内のどこからでもすべてのクラスターやシャードに対して読み取りと書き込みができる能力が必要であり、同時にリージョンごとの読み取りと書き込みも可能である必要があります。
重要
グローバルクラスターが複雑であることに加えて、特定の地理的リージョンの固有のニーズと提供内容があるため、単一のベストプラクティスをドキュメント化することは困難です。個別の要件については、MongoDB の Professional Services チームにお問い合わせください。