Google Cloud PlatformGoogle Cloud Platformストレージ バケット
Atlas Data FederationGCPAtlas Data Federation は、フェデレーティッドデータベースインスタンスストアとしてGCPストレージ バケットをサポートします。データに対してクエリを実行するには、フェデレーティッドデータベースインスタンスで Cloud Storageバケットへのマッピングを定義する必要があります。
注意
このページでは、オブジェクトをファイルと指し、区切り文字で区切られたプレフィックスはディレクトリと指します。 ただし、これらのオブジェクトストレージサービスは実際にはファイルシステムではなく、すべてのケースでハードドライブ上のファイルと同じように動作するわけではありません。
Google Cloud PlatformストレージGoogle Cloud Platform バケットの構成例
データセンターから収集されたデータを含むGoogle Cloud Platform Storageバケット{0 を例に考えてみましょう。Google Cloud Platformdatacenter-alpha
|--metrics |--hardware
/metrics/hardware
パスには、データセンターのハードウェアから取得したメトリクスを含む JSON ファイルが格納されます。各ファイル名は、以下のようにそのファイルがカバーする 24 時間の期間の UNIX タイムスタンプ(ミリ秒単位)です。
/hardware/1564671291998.json
以下は次のように構成されます。
Google Cloud Platformリージョンの Google Cloud Platform
datacenter-alpha
Google Cloud Platform Storageバケットにフェデレーティッドデータベースインスタンスストアを定義します。us-central1
Google Cloud Platformフェデレーティッドデータベースインスタンスストアには、metrics
ディレクトリパス内にデータファイルのみを含めるように明確に制限されています。/
の区切り文字は、ナビゲーションと検索を容易にするためにファイルシステム階層をシミュレートするために定義されています。hardware
ディレクトリのファイルを MongoDB databasedatacenter-alpha-metrics
とコレクションhardware
にマッピングします。 構成マッピングには、ファイル名に含まれるタイムスタンプを取得するための解析ロジックが含まれています。
{ "stores" : [ { "name" : "datacenter-alpha", "provider" : "gcs", "region" : "us-central1", "bucket" : "datacenter-alpha", "prefix": "metrics", "delimiter": "/" } ], "databases" : [ { "name" : "datacenter-alpha-metrics", "collections" : [ { "name" : "hardware", "dataSources" : [ { "storeName" : "datacenter-alpha", "path" : "/hardware/{date date}" } ] } ] } ] }
Atlas Data FederationAtlasGoogle Cloud Platform Data Federation はGoogle Cloud Platform Storageバケット を解析し、datacenter-alpha
/metrics/hardware/
配下にあるすべてのファイルを処理します。collections
オブジェクトは date
8601パス解析構文を使用して、ファイル名を各ドキュメントの ISO- 日付である フィールドにマッピングします。一致する date
フィールドがドキュメント内に存在しない場合、Atlas Data Federation はそれを追加します。
MongoDBフェデレーティッドデータベースインスタンスに接続したユーザーは、GCP MongoDBクエリ言語とサポートされている集計を使用し、datacenter-alpha-metrics.hardware
コレクションを通じてGCPストレージバケット内のデータを分析できます。
構成フォーマット
Atlas Data FederationGoogle Cloud PlatformGoogle Cloud Platformで Atlas Data Federation をサポートするために、フェデレーティッドデータベースインスタンス構成には次のプロトタイプ形式があります。
1 { 2 "stores" : [ 3 { 4 "name" : "<string>", 5 "provider" : "<string>", 6 "region" : "<string>", 7 "bucket" : "<string>", 8 "prefix": "<string>", 9 "delimiter": "<string>" 10 } 11 ], 12 "databases" : [ 13 { 14 "name" : "<string>", 15 "collections" : [ 16 { 17 "name" : "<string>", 18 "dataSources" : [ 19 { 20 "storeName" : "<string>", 21 "path" : "<string>", 22 "defaultFormat" : "<string>", 23 "provenanceFieldName": "<string>", 24 "omitAttributes": <boolean> 25 } 26 ] 27 } 28 ], 29 "maxWildcardCollections" : <integer>, 30 "views" : [ 31 { 32 "name" : "<string>", 33 "source" : "<string>", 34 "pipeline" : "<string>" 35 } 36 ] 37 } 38 ] 39 } 40
フィールド | タイプ | 必要性 | 説明 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 配列 | 必須 | 各オブジェクトがフェデレーティッドデータベースインスタンスに関連付けるデータ ストアを表すオブジェクトの配列。 フェデレーティッドデータベースインスタンス ストアは以下をキャプチャします。
Atlas Data Federation は、 | ||||||||||||
| string | 必須 | フェデレーティッドデータベースインスタンスストアの名前。 | ||||||||||||
| string | 必須 | データが保存されるクラウドプロバイダーの名前。 | ||||||||||||
| string | 必須 | Google Cloud PlatformGoogle Cloud PlatformGoogle Cloud Platform StorageバケットがホストされているGoogle Cloud Platformリージョンの名前。有効なリージョン名のリストについては、 Google Cloud Platform (GCP)を参照してください。 | ||||||||||||
| string | 必須 | Google Cloud Platform Storageバケットの名前。Google Cloud PlatformAtlas Google Cloud PlatformData Federation がアクセスする必要があるGoogle Cloud Platform Storageバケットの名前と完全に一致する必要があります。Atlas Data Federation | ||||||||||||
| string | 任意 | Atlas Data Federationプレフィックス「AtlasGoogle Cloud Platform Data Federation」は、 Google Cloud Platform Storageバケット内のファイルを検索するときに適用されます。例、次の構造を持つGoogleGoogle Cloud Platform Cloud Platform Storageバケット
フェデレーティッドデータベースインスタンスストアは、 デフォルトはGoogleGoogle Cloud Platform Cloud Platform Storageバケットのルートで、すべてのファイルを検索します。 | ||||||||||||
| string | 任意 | フェデレーティッドデータベースインスタンスストア内の | ||||||||||||
| 配列 | 必須 | |||||||||||||
| string | 必須 | Atlas Data Federation がデータ ストアに含まれるデータをマッピングするデータベースの名前。 | ||||||||||||
| 配列 | 必須 | 各オブジェクトが | ||||||||||||
| string | 必須 | Atlas Data Federation が各 コレクション名に | ||||||||||||
| 配列 | 必須 | 各オブジェクトがコレクションでマッピングする | ||||||||||||
| string | 必須 |
| ||||||||||||
| string | 必須 | Atlas Data Federation が 例、次の構造を持つGoogle Cloud Platform という名前のGoogle Cloud Platform Storageバケットを考えてみましょう。
パスに
詳細については、「S3 データのパスの定義」を参照してください。
同じ型の属性を指定する場合は、以下のいずれかを行います。
| ||||||||||||
| string | 任意 |
ファイル形式が 省略した場合、Atlas Data Federation はファイルの数バイトを処理することでファイル タイプの検出を試みます。 以下も参照してください。 サポートされているデータ形式 | ||||||||||||
| string | 任意 | 結果にドキュメントの出所が含まれるフィールドの名前。ストレージ構成でこの設定を指定すると、Atlas Data Federation は結果の各ドキュメントに対して次のフィールドを返します。
Atlas UI のビジュアル エディターを使用してこの設定を構成することはできません。 | ||||||||||||
| ブール値 | 任意 | Atlas Data Federation がコレクション内のドキュメントに追加する属性(キーと値のペア)を省略するかどうかを指定するフラグ。次のいずれかの値を指定できます。
省略した場合、デフォルトは 例、 |