Atlas Data Federation は、次の原則に準拠します。
安全な接続: Atlas Data Federation を使用する場合、フェデレーティッドデータベースインスタンスはリージョン別の VPCに存在します。 Atlas クラスターまたはクラウドストレージへのすべてのデータ トラフィックは、Atlas Data Federation で利用可能なネットワーク セキュリティのプライマリ形式である TLS暗号化を使用します。フェデレーティッドデータベースインスタンスとデータソース(Atlas クラスター、S3 、Blob、または Google Cloud Storage)が同じクラウドプロバイダーを共有している場合、データトラフィックはクラウドプロバイダーの機能に応じて、クラウドプロバイダーのネットワークインフラストラクチャまたはパブリックインターネットを使用します。異なるクラウドプロバイダーを使用している場合、データトラフィックはパブリックインターネットを使用します。
クエリルーティング: Atlas Data Federation とフェデレーティッドデータベースインスタンスは、基礎のデータソースを抽象化する一元化されたインターフェイスを使用して、複数のデータソースにクエリをルーティングします。フェデレーティッドデータベースインスタンスは、 MongoDBのような形式で外部データを表す仮想コレクションを作成することで、外部データソースにアクセスできるようにします。論理データベースは、仮想コレクションと接続されたクラスター コレクションを統合された名前空間にグループ化し、さまざまなデータソースに対してシームレスなクエリを実行します。
クエリ解析: クエリを実行すると、Atlas Data Federation はそれを解析し、仮想コレクションにマップされたデータソース全体の効率的な実行パスを計画します。 Atlas は、可能な場合、 フィルタリングや集計などの操作をソースにプッシュダウンします。複数のソースにまたがる結合や集計などの他の操作では、フェデレーティッドデータベースインスタンスが内部的にデータを検索して処理し、その結果を論理データベース内で組み合わせて提供します。これにより、単一のデータベースであるかのように、さまざまなデータソースをクエリできます。
次の図は、これらの原則を示しています。

データプレーン
前の図の Data Plane は、データが存在する場所です。 Atlas Data Federation を構成して、さまざまなストレージサービスのデータにアクセスできます。具体的には、 AWS S3 バケット、 Azure Blob Storage コンテナ、Google Cloud Storage バケット、Atlas クラスター、Atlas Online Archive、 HTTPおよび HTTPS URL内のデータにアクセスするように Atlas Data Federation を構成できます。データストアにアクセスするための Atlas Data Federation の構成の詳細については、「 フェデレーティッドデータベースインスタンスのデータストアの構成 」を参照してください。
コンピュート プレーン
Atlas Data Federation は、データローカリティを維持し、可能な場合はローカル計算を最大化して、データ転送を最小限に抑え、パフォーマンスを最適化します。前の図のコンピュート プランは、Atlas Data Federation がすべてのリクエストを処理する場所を示しています。 Atlas Data Federation は、データストアに最も近いリージョンのエージェントの従量制プールを使用して、クエリのデータを処理します。サポートされているリージョンの詳細については、「 Atlas Data Federation のリージョン 」を参照してください。
Atlas Data Federation は基礎となるデータを保持せず、接続のフロントエンドリージョンにカーソル データを一時的に保持します。クエリの実行に必要なメタデータはすべて、 グローバルバックエンドに保存されます。データ リージョンと同じフロントエンドリージョンを使用すると、データ所有権規則に準拠することができます。
コントロール プレーン
前図の Control Plane は、TLS 終了、カーソルの管理、クエリ実行中にカーソルデータの一時的な保存などの主要な機能を処理します。また、ユーザー クエリを処理し、最終結果を集計するコンピュート プレーンとの調整も行います。
クエリは実行されると、最初に Control Plane によって処理され、最も効率的な実行戦略が決定されます。この計画されたクエリは、その後、コンピュート プレーンに分散されます。コンピュート プレーンは、データ ストアに対してクエリ ロジックを直接実行し、結果をコントロール プレーンに返します。データソースが単一の Atlas クラスターである場合、コントロール プレーンはクラスターに直接クエリを発行し、コンピュート プランをバイパスし、操作を簡素化します。詳細については、「 フェデレーティッドデータベースインスタンスのクエリ 」を参照してください。
次に、フェデレーティッドデータベースインスタンスのロールベースのアクセス制御を設定できます。 クライアントがフェデレーティッドデータベースインスタンスに接続する方法は、グローバル接続オプションを使用するか、特定のリージョンに固定することで制御できます。 詳しくは、「フェデレーティッドデータベースインスタンスへの接続の構成 」を参照してください。