Docs Menu
Docs Home
/
Atlas
/ /

フェデレーティッドデータベースインスタンスの配置

推定所要時間: 15 分

チュートリアルのこの部分では、Atlas UI の次のクイックスタート ウィザードを使用してフェデレーティッドデータベースインスタンスを配置する方法についてガイドします。

  • フィードダウンストリーム システム ウィザードを使用すると、Atlas クラスターからデータをエクスポートし、データを Perquet CSV BSON 、またはMongoDB拡張JSONに変換し、 をコピーするフェデレーティッドデータベースインスタンスを設定できます。 Atlas triggers を使用して、指定された間隔でAmazon Web Services S バケットにデータを送信します。3

  • サンプル データで探索

  • クエリ データウィザードを使用すると、複数の Atlas クラスターのデータにアクセスするフェデレーティッドデータベースインスタンスを設定でき、すべてのコレクションからフェデレーティッドクエリを実行できます。

ストレージ構成オプションの詳細については、「フェデレーティッドデータベースインスタンス用のデータ ストアの定義 」を参照してください。

フェデレーティッドデータベースインスタンスを配置するには、プロジェクトへの Project Ownerアクセス権が必要です。

重要

Organization Owner アクセスを持つユーザーは、フェデレーティッドデータベースインスタンスを配置する前に、自分自身を Project Owner としてプロジェクトに追加する必要があります。

チュートリアルのこの部分を完了するには、次の前提条件を満たしていることを確認してください。

  • MongoDB Atlasアカウントがまだない場合は、作成します。

  • フィードダウンストリーム システム ウィザードには、次のものが必要です。

  • クラスター全体のクエリ データ ウィザードには、次のものが必要です。

    • フェデレーティッドデータベースインスタンスに使用するプロジェクトと同じプロジェクトに配置された少なくとも 1 つの Atlas クラスター。

    • 少なくとも 1 つのデータベース コレクション。 まだコレクションがない場合は、サンプル データを読み込むことができます。

フィードダウンストリームシステムウィザードを使用すると、 AtlasクラスターからAmazon Web Services S3バケットにスケジュールで継続的にデータを書込むフェデレーティッドデータベースインスタンスを設定できます。

1
2
3
  1. [ Create New Federated Database ] ドロップダウンをクリックします。

  2. Feed Downstream Systems を選択します。

4
5

デフォルトはFederatedDatabaseInstance[n]です。 フェデレーティッドデータベースインスタンスは、一度作成されると変更できません。

6
  1. ドロップダウンから、データソースとして使用する Atlas クラスターを選択します。 デフォルトでは、Atlas Data Federation はこのクラスターにすべてのコレクションを追加します。 データのサブセットを使用するには、 Specific Collectionsをクリックし、データベースを展開し、フェデレーティッドデータベースインスタンスに追加するコレクションを選択します。

    Tip

    データベースとコレクションをフィルタリングするには、 Specific Collectionsフィールドにテキストを入力します。 ダイアログ ボックスには、検索条件に一致する名前を持つデータベースとコレクションのみが表示されます。

  2. [Continue] をクリックします。

7

ロール選択ドロップダウン リストから、At に認可されている既存のAmazon Web Services IAM ロールを選択することも、AtlasAuthorize an AWS IAM Role を選択して新しいロールを認可することもできます。

Atlasが認可されている既存のロールを選択した場合は、次のステップに進み、 Amazon Web Services S3バケットを一覧表示します。

既存のロールを Atlas に認可するか、新しいロールを作成する場合は、次の手順に進む前に以下の手順を完了してください。

  1. ドロップダウンから、 Authorize an AWS IAM Role ] を選択して新しいロールを承認するか、既存のロールを選択します。

  2. セクションでAmazon Web Services ARN と一意の外部ID Role AuthorizationAtlasを使用して、既存または新規の IAM ロールの信頼関係にAmazon Web Services を追加します。

    Atlas UI で、次のいずれかをクリックします。

    • Create new AWS IAM roleは、 ARN と一意の外部ID Atlasを使用して、新しいAmazon Web Services IAM ロールの信頼関係に追加する方法を示します。Atlas UI の手順に従って新しいロールを作成します。 詳細については、「 Amazon Web Services CLIを使用した新しいロールの作成 」を参照してください。

      新しいロールを認可する際、ワークフローを終了すると次の状況が発生します。

      • ロールを検証する前に、Atlas はフェデレーティッドデータベースインスタンスを作成しません。 GoAtlasIntegrationsページに して新しいロールを 認可 し、 IAM ロール ARN Amazon Web Servicesがあるときに フェデレーティッドデータベースインスタンスを再度配置する 手順を再度開始できます。

      • ロールを検証した後、Atlas はフェデレーティッドデータベースインスタンスを作成しません。 ただし、 ロールはロール選択ドロップダウンで使用可能であり、フェデレーティッドデータベースインスタンスの作成に使用できます。 ロールを再度認可する必要はありません。

    • Use existing AWS IAM roleは、 ARN と一意の外部ID Atlasを使用して、既存のAmazon Web Services IAM ロールの信頼関係に追加する方法を示します。Atlas UI の手順に従って、Atlas を信頼関係に既存のロールに追加します。 詳細については、「既存のロールへの信頼関係の追加」を参照してください。

    重要

    将来的にカスタムAmazon Web ServicesロールARNを変更する場合は、ロールのアクセス ポリシーに、フェデレーティッドデータベースインスタンスのS3リソースへの適切なアクセスが含まれていることを確認してください。

    詳細については、「統合Amazon Web Servicesアクセスの設定 」および「 クラウドプロバイダー アクセス ロールの作成 」を参照してください。

  3. [Validate AWS IAM role] をクリックします。

8
  1. S3バケットの名前を入力します。

  2. Atlas UI の手順に従って、 Amazon Web Services IAM ロールにアクセス ポリシーを割り当てます。

  3. [Validate AWS S3 bucket access] をクリックします。

  4. [Continue] をクリックします。

9

セクションの $out を使用して、Atlas クラスターから S バケットにデータを継続的にコピーするための トリガー3Schedule Queries を予定します。

  1. Repeat Once Byドロップダウンを使用して、Atlas クラスターからデータを抽出する頻度を指定します。

  2. 任意。 何らかの理由で実行されなかった場合に、Atlas Data Federation が同じクエリを再実行する必要があるかどうかを指定します。 デフォルトでは、これは無効になっており、Atlas Data Federation は見逃したクエリを再実行できます。 あるいは、見逃したクエリに追いつけないようにスキップするには、 をSkip Catch Up Eventsに切り替えます。

  3. 任意 。Atlas Data Federation が S3 バケットにデータを書き込むときに、データの形式を選択します。Atlas Data Federation は、ParquetCSVBSON、およびMongoDB拡張JSONをサポートしています。

  4. Atlas Data Federation がS3バケットに書き込む各ファイルのサイズを制限するには、 Max File Sizeを指定します。 たとえば、 Max File Sizeを 100 MB に設定し、クエリが 1 GB のデータを返す場合、Atlas Data Federation はクエリをS3バケットに 10 個のファイル(100 MB)で書込みます。

  5. 宛先 S3 バケットのAmazon Web Servicesプレフィックスを入力します。

  6. Date Fieldインデックス付き日付フィールドの名前を入力し、 ドロップダウンを使用してその値の形式を指定します。 下流にコピーするすべてのコレクションには、タイムスタンプを値として保存するインデックス付きフィールドが必要です。

  7. [Continue] をクリックします。

10

サンプル データで探索 ウィザードを使用すると、サンプル データをロードしたフェデレーティッドデータベースインスタンスを設定できます。

1
2
3
  1. [ Create New Federated Database ] ドロップダウンをクリックします。

  2. Explore with Sample Data を選択します。

4
5

このフェデレーティッドデータベースインスタンスには、クエリの実行に使用できる次のサンプル データセットが含まれています。

  • /airbnb/listingsAndReviews/{bedrooms int}/{review_scores.review_scores_rating int}/

    このパスは、バケーション ハウスのリスティングの詳細とカスタマー レビューを含むairbnbデータセットを参照します。 このデータセットの詳細については、「 AirBnB リスティング データセットのサンプル 」を参照してください。

    このパスでは、フェデレーティッドデータベースインスタンスは、 bedroomsフィールドとreview_scores.review_score_ratingsフィールドのクエリ用に最適化されたパーティションを使用します。

  • /analytics/accounts/{limit int}/

    このパスは、一般的な金融サービス アプリケーションのデータを含むanalyticsデータセットを参照します。 このデータセットの詳細については、「分析用サンプル データセット 」を参照してください。

    このパスでは、フェデレーティッドデータベースインスタンスはlimitフィールドのクエリ用に最適化されたパーティションを使用します。

  • /analytics/customers/{birthdate isodate}/

    このデータは、一般的な金融サービス アプリケーションのコレクションを含むanalyticsデータセットを参照します。 このデータセットの詳細については、「分析用サンプル データセット 」を参照してください。

    このパスでは、フェデレーティッドデータベースインスタンスはbirthdateフィールドのクエリ用に最適化されたパーティションを使用します。

  • /analytics/transactions/{account_id int}/

    このパスは、一般的な金融サービス アプリケーションのデータを含むanalyticsデータセットを参照します。 このデータセットの詳細については、「分析用サンプル データセット 」を参照してください。

    このパスでは、フェデレーティッドデータベースインスタンスはaccount_idフィールドのクエリ用に最適化されたパーティションを使用します。

  • /mflix/movies/{type string}/{year int}/

    このパスは、映画と映画館に関するデータを含むmflixデータセットを参照します。 このデータセットの詳細については、「 Mflix サンプル データセット 」を参照してください。

    このパスでは、フェデレーティッドデータベースインスタンスは、type フィールドとyear フィールドのクエリ用に最適化されたパーティションを使用します。

  • /mflix/sessions.json

    このパスは、映画と映画館に関するデータを含むmflixデータセットを参照します。 このデータセットの詳細については、「 Mflix サンプル データセット 」を参照してください。

    このパスにはパーティション属性が含まれていないため、コレクション内のデータに対するクエリでは、Data Federation はコレクション内のすべてのファイルを検索します。

  • /mflix/theaters/{theaterId string}/{location.address.zipcode string}/

    このパスは、映画と映画館に関するデータを含むmflixデータセットを参照します。 このデータセットの詳細については、「 Mflix サンプル データセット 」を参照してください。

    このパスでは、フェデレーティッドデータベースインスタンスは、theaterId フィールドとlocation.address.zipcode フィールドのクエリ用に最適化されたパーティションを使用します。

  • /mflix/users.json

    このパスは、映画と映画館に関するデータを含むmflixコレクションを参照します。 このデータセットの詳細については、「 Mflix サンプル データセット 」を参照してください。

    このパスにはパーティション属性が含まれていないため、コレクション内のデータに対するクエリでは、フェデレーティッドデータベースインスタンスはコレクション内のすべてのファイルを検索します。

  • /nyc-yellow-cab-trips/{trip_start_isodate isodate}/{passenger_count int}/{fare_type string}/

    このパスは、移動日、料金、利用者数などの行程のデータを含むnyc-yellow-cab-tripsデータセットを参照します。

    このパスでは、フェデレーティッドデータベースインスタンスは、 trip_start_isodatepassenger_countfare_typeフィールドのクエリ用に最適化されたパーティションを使用します。

クエリ データ ウィザードを使用すると、複数の Atlas クラスターのデータにアクセスするフェデレーティッドデータベースインスタンスを設定できます。

1
2
3
  1. [ Create New Federated Database ] ドロップダウンをクリックします。

  2. Query Data Across Clusters を選択します。

4
5

デフォルトはFederatedDatabaseInstance[n]です。 フェデレーティッドデータベースインスタンスは、一度作成されると変更できません。

6
  1. ドロップダウンから、データソースとして使用する Atlas クラスターを選択します。 Atlas は、このドロップダウンに現在の Atlas プロジェクト内のクラスターのみを表示します。

  2. データベースを展開し、フェデレーティッドデータベースインスタンスに追加するコレクションを選択します。

    Tip

    データベースとコレクションをフィルタリングするには、 Specific collectionsフィールドにテキストを入力します。 ダイアログ ボックスには、検索条件に一致する名前を持つデータベースとコレクションのみが表示されます。

  3. 任意Cluster Read Preference設定を展開して、次のフィールドを構成します。

    フィールド名
    説明

    Read Preference Mode

    読み取りリクエストをルーティングするレプリカセット ノードを指定します。 ドロップダウンから、次のいずれかを選択できます。

    • primary - すべての読み取りリクエストをレプリカセットのプライマリにルーティングします

    • primaryPreferred - primaryが使用できない場合にのみ、すべての読み取りリクエストをレプリカセットのプライマリセカンダリノードにルーティングします

    • secondary - すべての読み取りリクエストをレプリカセットのセカンダリノードにルーティングします

    • secondaryPreferred - secondaryノードが使用できない場合にのみ、すべての読み取りリクエストをレプリカセットのセカンダリノードとシャーディングされたクラスター上のプライマリにルーティングします

    • nearest - メンバーがプライマリであるか、セカンダリであるかに関係なく、すべての読み取りリクエストを、ランダムに選択された適格なレプリカセット メンバーにルーティングします。

    Atlas クラスターをストアとして追加する場合、デフォルト値はsecondaryです。

    フェデレーティッドデータベースインスタンスのストレージ構成で何も設定しない場合、デフォルト値はnearestです。 詳しくは、「読み込み設定(read preference)モード 」を参照してください。

    TagSets

    読み取りリクエストをルーティングするレプリカセット ノードの、名前と値のペアを含むタグまたはタグ仕様ドキュメントのリストを指定します。 詳しくは、「読み込み設定(read preference)タグセット 」を参照してください。

    Maxstaleness Seconds

    セカンダリからの読み取りの最大レプリケーションラグ、つまり「古さ」を指定します。 詳細については、「読み込み設定(read preference) maxStalenessSeconds 」を参照してください。

  4. Add Atlas cluster and collectionをクリックし、データソースとして使用するすべての Atlas クラスターに対してこれらの手順を繰り返します。

  5. クラスターの追加が完了したら、[ Continue ] をクリックします。

7

フェデレーティッドデータベースインスタンスが配置されたので、「 フェデレーティッドデータベースインスタンスへの接続の構成 」に進みます。

項目一覧