フェデレーティッドデータベースインスタンスに対するデータストアの定義
項目一覧
フェデレーティッドデータベースインスタンスの作成は、まず、 JSON形式でストレージ構成を作成することで始まります。 ストレージ構成は、データ ストアを定義し、それらのデータ ストアをクエリ可能なコレクションにマッピングします。
Atlas Data Federation は、 S 3バケット、Azure Blob Storage コンテナ、Atlas クラスター、Atlas オンライン アーカイブ、一般にアクセス可能なURLをデータ ストアとしてサポートします。 データに対してクエリを実行するには、フェデレーティッドデータベースインスタンスでS3バケット、 Atlasクラスター、 Atlas Online Archive 、およびHTTPデータストアへのマッピングを定義する必要があります。
重要
ストレージ構成内の情報は MongoDB の内部で表示され、Atlas Data Federation のパフォーマンスを監視して改善するための運用データとして保存されます。 構成ではPIIを使用しないことをお勧めします。
このページでは、フェデレーティッドデータベースインスタンスのストレージ構成の設定、更新、および取得に使用できる管理コマンドについて説明します。 このセクションの他のページでは、さまざまなデータ ストアのフェデレーティッドデータベースインスタンスのストレージ構成で定義できる設定について説明します。
Data Federation のアクセス
フェデレーティッドデータベースインスタンスを作成すると、Atlas に3 アカウントのAmazon Web Services S バケットへの読み取り専用または読み取りおよび書込みアクセスが許可されます。Atlas クラスターにアクセスするために、Atlas は既存のロールベースのアクセス制御 を使用します。 S 3バケットと Atlas クラスターのデータをフェデレーティッドデータベースインスタンスと仮想コレクションにマッピングするデータ ストレージ構成を表示および編集できます。
権限アクション
特権アクションは、フェデレーティッドデータベースインスタンスで実行できる操作を定義します。 次の Atlas Data Federation 特権を付与できます。
インターフェイスからカスタムロールを 作成または変更するAtlas user 場合
Atlas API からカスタムロールを
actions.action
作成 または 更新 する際の リクエスト本文パラメータ内
sqlGetSchema
[
mongosh
を使用してスキーマを表示 ]コマンドを使用して、コレクションまたはビューに保存されているスキーマを取得します。
sqlSetSchema
[
mongosh
を使用したスキーマの編集 ]コマンドを使用して、コレクションまたはビューのスキーマを設定または削除します。
outToAzure
サポートされているフェデレーティッドデータベースインスタンス ストアの 1 つまたは複数のフェデレーティッドデータベースインスタンス ストアからのデータをAzure Blob ストレージ コンテナに書込み (write) するのに、
$out
を使用します。
outToS3
サポートされているフェデレーティッドデータベースインスタンス ストアのいずれか 1 つまたは複数のサポートされているフェデレーティッドデータベースインスタンス ストアから S
$out
を使用して、データをS 3バケットに書込みます
outToGCP
サポートされているフェデレーティッドデータベースインスタンスストアの 1 つまたは複数のフェデレーティッドデータベースインスタンスストアからのデータを Google Cloud Storageバケットに書込み (write) するのに、
$out
を使用します。
storageGetConfig
storageGetConfig コマンドを使用して、フェデレーティッドデータベースインスタンスの ストレージ構成 を取得します。
storageSetConfig
storageSetConfig コマンドを使用して、フェデレーティッドデータベースインスタンスの ストレージ構成 を設定または更新します。
フェデレーティッドデータベースインスタンス構成の設定または更新
フェデレーティッドデータベースインスタンスに接続すると、次のデータベースコマンドを使用してフェデレーティッドデータベースインスタンスの構成を設定または更新できます。
use admin db.runCommand( { "storageSetConfig" : <config> } )
<config>
をフェデレーティッドデータベースインスタンスの構成に置き換えます。 フェデレーティッドデータベースインスタンス構成を設定または更新する前に、 storageValidateConfigコマンドを実行して構成を検証できます。
Atlas UI を通じてストレージ構成を設定または更新するには、次のようにします。
フェデレーティッドデータベースインスタンスのストレージ構成に必要な変更を加えます。
ストレージ構成でデータストアを管理するには、次の手順に従います。
新しいデータストアを追加するには、 Add Data Storeをクリックします。 を追加するには
S 3データストアは、フェデレーティッドデータベースインスタンスの配置のステップ5を完了します。
Atlas データ ストアの場合は、「 フェデレーティッドデータベースインスタンスの配置 」の手順 5 から 7 に従います。
HTTPデータ ストアについては、「 フェデレーティッドデータベースインスタンスの配置」の手順5から7に従います。
Atlas Online Archive でUI からの作成 の手順5と6に従います。
stores
JSON構成設定に対応します。をクリックしますストアがデータストア名を編集する。
stores.[n].name
JSON構成設定に対応します。をクリックしますデータストアに関連付けられている を使用して、データストアを削除します。
ストレージ構成でデータベースを管理するには、次の手順に従います。
データベースとコレクションを追加するには、 Create Databaseをクリックします。
databases
JSON構成設定に対応します。をクリックしますデータベースがデータベース名を編集する。
databases.[n].name
JSON構成設定に対応します。をクリックしますデータベースに関連付けられている を使用してデータベースを削除します。
ストレージ構成でコレクションとビューを管理するには、次の手順に従います。
をクリックしますのために
コレクション名を編集するためのコレクション。
databases.[n].collections.[n].name
JSON構成設定に対応します。ビュー名とパイプラインを編集するには、 を表示します。
それぞれ
databases.[n].views.[n].name
とdatabases.[n].views.[n].pipeline
のJSON構成設定に対応します。
をクリックしますは、次のものに関連付けられます。
をクリックしますコレクションまたはビューに関連付けられている を使用して、コレクションまたはビューを削除します。
stores
とdatabases
の UI に表示されるJSON構成設定を編集します。 構成設定の詳細については、「フェデレーティッドデータベースインスタンス用のデータストアの定義 」を参照してください。
フェデレーティッドデータベースインスタンスの構成の検証
フェデレーティッドデータベースインスタンスの構成を検証するには、次のコマンドを実行します。
use admin db.runCommand( { "storageValidateConfig" : <config> } )
<config>
をフェデレーティッドデータベースインスタンスの構成に置き換えます。
フェデレーティッドデータベースインスタンスの構成が有効な場合、コマンドは次の結果を返します。
{ "ok" : 1 }
フェデレーティッドデータベースインスタンスのストレージ構成が無効な場合、 コマンドはerrs
フィールドにエラーのリストを返します。
{ "ok" : 1, "errs" : [ "<error>", "<error>", ... ] }
フェデレーティッドデータベースインスタンスの構成取得
フェデレーティッドデータベースインスタンスに接続すると、次のデータベースコマンドを使用してフェデレーティッドデータベースインスタンスの構成を取得できます。
use admin db.runCommand( { "storageGetConfig" : 1 } )
コマンドは、現在のフェデレーティッドデータベースインスタンスの構成を返します。
ワイルドカード コレクションの生成
S3バケットまたは Atlas クラスター内のデータにマッピングするコレクション名を動的に生成できます。 コレクション名を動的に生成するには、フェデレーティッドデータベースインスタンス ストレージ構成のコレクション名設定の値としてワイルドカード( *
)を指定します。 HTTPまたはHTTPSデータ ストア内のデータにマップするフェデレーティッドデータベースインスタンス ストレージ構成では、コレクション名を動的に生成することはできません。
storageSetConfigコマンドを使用して、ワイルドカード( *
)コレクションを生成する設定を構成できます。
ワイルドカード コレクションを生成するための構成設定の詳細については、以下を参照してください。