フェデレーティッドデータベースインスタンスの配置
このページでは、フェデレーティッドデータベースインスタンスを配置して Atlas クラスター内のデータにアクセスする方法について説明します。
必要なアクセス権
フェデレーティッドデータベースインスタンスを配置するには、プロジェクトに対する Project Owner
アクセス権が必要です。 Organization Owner
アクセスを持つユーザーは、フェデレーティッドデータベースインスタンスを配置する前に、自分自身をProject Owner
としてプロジェクトに追加する必要があります。
前提条件
始める前に、次のことを行う必要があります。
MongoDB Atlasアカウントがまだない場合は、作成し 。
Atlas クラスターがまだない場合は、 作成します 。 は、 、Amazon Web ServicesAzure 、またはAtlas Data Federation Atlasに配置されたGoogle Cloud Platform クラスターをサポートしています。
注意
Atlas クラスターをデータストアとして使用するには、フェデレーティッドデータベースインスタンスと同じプロジェクトに配置する必要があります。
Atlas クラスターの少なくとも 1 つのコレクションにデータをまだ追加していない場合は、データを追加します。
手順
Atlas CLI を使用して新しい Data Federation データベースを作成するには、次のコマンドを実行します。
atlas dataFederation create <name> [options]
コマンド構文とパラメーターの詳細については、 Atlas CLIドキュメントのAtlas dataFederation create を参照してください。
Atlas Data Federation がフェデレーティッドデータベースインスタンスに対してクエリを処理するクラウドプロバイダーを選択します。
[ Amazon Web Services ] 、Amazon Web Services Azure[ Azure ] 、またはGoogle Cloud Platformを選択できます。Google Cloud Platformフェデレーティッドデータベースインスタンスが作成された後は、Atlas Data Federation がクエリを処理するクラウドプロバイダーを変更することはできません。
Atlas クラスター内のデータをクエリする場合は、クラスターのクラウドプロバイダーと同じクラウドプロバイダーを選択することをお勧めします。 Amazon Web Services S3やAzure Blob Storage などのオブジェクト ストレージ内のデータをクエリするには、フェデレーティッドデータベースインスタンスにオブジェクト ストレージのクラウドと同じクラウドを選択する必要があります。
データストアを指定します。
Data Sourcesセクションからフェデレーティッドデータベースインスタンスのデータセットを選択します。
データストアを選択するには、 Add Data Sourcesをクリックします。
データソースを指定します。
Atlas クラスター上のデータ用にフェデレーティッドデータベースインスタンスを構成するには、 Atlas Clusterを選択します。
stores.[n].provider
JSON構成設定に対応します。Provide Namespaces in this projectセクションで、データストアとして使用する Atlas クラスターを選択します。
stores.[n].clusterName
JSON構成設定に対応します。データベースを展開し、フェデレーティッドデータベースインスタンスに追加するコレクションを選択します。
データベースとコレクションをフィルタリングするには、 Search database or collectionフィールドにテキストを入力します。 ダイアログ ボックスには、検索条件に一致する名前を持つデータベースとコレクションのみが表示されます。
databases.[n].collections.[n].dataSources.[n].database
とdatabases.[n].collections.[n].dataSources.[n].collection
のJSON構成設定に対応します。任意。 セクションを展開してCluster Read Preference設定を指定します。
stores.[n].readPreference
に対応します。フィールド名説明Read Preference Mode読み取りリクエストをルーティングするレプリカセット ノードを指定します。 ドロップダウンから、次のいずれかを選択できます。
primary
- すべての読み取りリクエストをレプリカセットのプライマリにルーティングしますprimaryPreferred
-primary
が使用できない場合にのみ、すべての読み取りリクエストをレプリカセットのプライマリとセカンダリノードにルーティングしますsecondary
- すべての読み取りリクエストをレプリカセットのセカンダリノードにルーティングしますsecondaryPreferred
-secondary
ノードが使用できない場合にのみ、すべての読み取りリクエストをレプリカセットのセカンダリノードとシャーディングされたクラスター上のプライマリにルーティングしますnearest
- メンバーがプライマリであるか、セカンダリであるかに関係なく、すべての読み取りリクエストを、ランダムに選択された適格なレプリカセット メンバーにルーティングします。
Atlas クラスターをストアとして追加する場合、値のデフォルト値は
secondary
です。フェデレーティッドデータベースインスタンスのストレージ構成で何も設定しない場合、デフォルト値は
nearest
です。 詳しくは、「読み込み設定(read preference)モード 」を参照してください。TagSets読み取りリクエストをルーティングするレプリカセット ノードの、名前と値のペアを含むタグまたはタグ仕様ドキュメントのリストを指定します。 詳しくは、「読み込み設定(read preference)タグセット 」を参照してください。
Maxstaleness Secondsセカンダリからの読み取りの最大レプリケーションラグ、つまり「古さ」を指定します。 詳細については、「読み込み設定(read preference) maxStalenessSeconds 」を参照してください。
[Next] をクリックします。
仮想データベース、コレクション、ビューを作成し、データベース、コレクション、ビューをデータ ストアにマッピングします。
(任意)クリックのために
データベース名を編集するデータベース。 デフォルトは
VirtualDatabase[n]
です。databases.[n].name
JSON構成設定に対応します。コレクション名を編集するためのコレクション。 デフォルトは
VirtualCollection[n]
です。databases.[n].collections.[n].name
JSON構成設定に対応します。を使用してビュー名を編集します。
次のコマンドをクリックできます。
Add Database : データベースとコレクションを追加します。
データベースにコレクションを追加するために関連付けられています。
コレクションにビューを追加するコレクションに関連付けられている ビューを作成するには、以下を指定する必要があります。
ビューの名前。
ビューに適用するパイプライン。
ビュー定義パイプラインには、
$out
または$merge
ステージを含めることはできません。 ビュー定義に、$lookup
や$facet
などのネストされたパイプライン ステージが含まれている場合、この制限はそれらのネストされたパイプラインにも適用されます。
ビューの詳細については、以下を参照してください。
関連付けられているデータベース、コレクション、またはビューを削除します。
Data SourcesセクションのドロップダウンからAtlas Clusterを選択します。
データ ストアをドラッグして削除し、コレクションとマッピングします。
databases.[n].collections.[n].dataSources
JSON構成設定に対応します。
Atlas クラスター データストアの構成は次のようになります。
1 { 2 "stores" : [ 3 { 4 "name" : "<string>", 5 "provider": "<string>", 6 "clusterName": "<string>", 7 "projectId": "<string>", 8 "readPreference": { 9 "mode": "<string>", 10 "tagSets": [ 11 [{"name": "<string>", "value": "<string>"},...], 12 ... 13 ], 14 "maxStalenessSeconds": <int> 15 } 16 } 17 ], 18 "databases" : [ 19 { 20 "name" : "<string>", 21 "collections" : [ 22 { 23 "name" : "<string>", 24 "dataSources" : [ 25 { 26 "storeName" : "<string>", 27 "database" : "<string>", 28 "databaseRegex": "<string>", 29 "collection" : "<string>", 30 "collectionRegex" : "<string>", 31 "provenanceFieldName": "<string>" 32 } 33 ] 34 } 35 ], 36 "views" : [ 37 { 38 "name" : "<string>", 39 "source" : "<string>", 40 "pipeline" : "<string>" 41 } 42 ] 43 } 44 ] 45 }
これらの構成設定の詳細については、「フェデレーティッドデータベースインスタンス用のデータ ストアの定義 」を参照してください。
Atlas データ ストアを定義します。
stores
の UI に表示されるJSON構成設定を編集します。stores
の構成設定は次のようになります。"stores" : [ { "name" : "<string>", "provider" : "<string>", "clusterName" : "<string>", "projectId": "<string>" "readPreference": { "mode": "<string>", "tagSets": [ [{"name": "<string>", "value": "<string>"},...], ... ], "maxStalenessSeconds": <int> }, "readConcern": { "level": "<string>" } } ] これらの構成設定の詳細については、
stores
を参照してください。フェデレーティッドデータベースインスタンスの仮想データベース、コレクション、ビューを定義します。
databases
の UI に表示されるJSON構成設定を編集します。databases
の構成設定は次のようになります。"databases" : [ { "name" : "<string>", "collections" : [ { "name" : "<string>", "dataSources" : [ { "storeName" : "<string>", "database" : "<string>", "databaseRegex": "<string>", "collection" : "<string>", "collectionRegex" : "<string>", "provenanceFieldName": "<string>" } ] } ] } ] これらの構成設定の詳細については、
databases
を参照してください。