Docs Menu
Docs Home
/
MongoDB Atlas
/ /

HTTP URL

項目一覧

  • HTTP データストアの構成例
  • 構成フォーマット
  • stores
  • databases

Atlas Data Federation は、フェデレーティッドデータベースインスタンス ストアとして一般にアクセス可能な URLをサポートします。 データに対してクエリを実行するには、フェデレーティッドデータベースインスタンスでHTTPデータ ストアへのマッピングを定義する必要があります。

重要

ストレージ構成内の情報は MongoDB の内部で表示され、Atlas Data Federation のパフォーマンスを監視して改善するための運用データとして保存されます。 したがって、構成ではPIIを使用しないことをお勧めします。

注意

プレビュー

HTTP データ ストア のサポートはプレビュー機能として利用できます。 機能および関連するドキュメントは、プレビュー ステージ中にいつでも変更される可能性があります。

データセンターから収集されたデータを含むURL https://www.datacenter-hardware.com/data.jsonhttps://www.datacenter-software.com/data.jsonhttps://www.datacenter-metrics.com/data.jsonについて考えます。 以下は次のように構成されます。

  • フェデレーティッドデータベースインスタンス ストアとしてのファイル内のデータを含む、パブリックにアクセス可能な URL を指定します。

  • URL用のパーティションを作成します。

{
"stores" : [
{
"name" : "httpStore",
"provider" : "http",
"allowInsecure" : false,
"urls" : [
"https://www.datacenter-hardware.com/data.json",
"https://www.datacenter-software.com/data.json"
],
"defaultFormat" : ".json"
}
],
"databases" : [
{
"name" : "dataCenter",
"collections" : [
{
"name" : "inventory",
"dataSources" : [
{
"storeName" : "httpStore",
"allowInsecure" : false,
"urls" : [
"https://www.datacenter-metrics.com/data"
],
"defaultFormat" : ".json"
}
]
}
]
}
]
}

Tip

以下も参照してください。

HTTPまたはHTTPS URLでのデータのクエリ

フェデレーティッドデータベースインスタンス構成の形式は次のとおりです。

1{
2 "stores" : [
3 {
4 "name" : "<string>",
5 "provider": "<string>",
6 "defaultFormat" : "<string>",
7 "allowInsecure": <boolean>,
8 "urls": ["<string>"]
9 }
10 ],
11 "databases" : [
12 {
13 "name" : "<string>",
14 "collections" : [
15 {
16 "name" : "<string>",
17 "dataSources" : [
18 {
19 "storeName" : "<string>",
20 "allowInsecure" : <boolean>,
21 "urls" : ["<string>"],
22 "defaultFormat" : "<string>",
23 "provenanceFieldName": "<string>"
24 }
25 ]
26 }
27 ],
28 "views" : [
29 {
30 "name" : "<string>",
31 "source" : "<string>",
32 "pipeline" : "<string>"
33 }
34 ]
35 }
36 ]
37}
stores
storesオブジェクトは、フェデレーティッドデータベースインスタンスに関連付けられた各データ ストアを定義します。 フェデレーティッドデータベースインスタンス ストアは、一般にアクセス可能なURLに保存されているファイルをキャプチャします。 Data Federation は、 storesオブジェクトで定義されたデータ ストアにのみアクセスできます。
databases
databases オブジェクトは、stores で定義された各フェデレーティッドデータベースインスタンス ストアとデータベース内の MongoDB コレクションの間のマッピングを定義します。
1"stores" : [
2 {
3 "name" : "<string>",
4 "provider" : "<string>",
5 "allowInsecure": <boolean>,
6 "urls" : ["<string>"],
7 "defaultFormat" : "<string>"
8 }
9]
stores

各オブジェクトがフェデレーティッドデータベースインスタンスに関連付けるデータ ストアを表すオブジェクトの配列。フェデレーティッドデータベースインスタンス ストアは、S3 バケット内のファイル、Atlas クラスター内のドキュメント、または一般にアクセス可能な URL に保存されているファイルを取得します。Atlas Data Federation は、stores オブジェクトで定義されたデータ ストアにのみアクセスできます。

stores.[n].name

フェデレーティッドデータベースインスタンス ストアの名前。 databases.[n].collections.[n].dataSources.[n].storeNameフィールドは、マッピング構成の一部としてこの値を参照します。

stores.[n].provider

データを保存する場所を定義します。値は次のいずれかになります。

  • s3Amazon Web Services S3バケット用)。

  • atlas Atlas クラスター内のコレクション用。

  • http は、一般にアクセス可能なURLでホストされているファイル内のデータと接続します。

stores.[n].allowInsecure

任意。 指定されたURLのスキームを検証します。 値は次のいずれかになります。

  • true 安全でないHTTPスキームを許可する

  • false 安全なHTTPSスキームのみを許可します(デフォルト)

true の場合、Atlas Data Federation は次のように動作します。

  • サーバーの証明書チェーンとホスト名を検証しません。

  • サーバーによって提示されたホスト名を持つ任意の証明書を受け入れます。

警告:これをtrueに設定すると、データが中間者攻撃(man-in-the-middle attack)に対して脆弱になり、データの機密性と整合性が損なわれる可能性があります。 Atlas Data Federation のテストと使用を開始する場合のみ、これをtrueに設定します。

省略した場合、デフォルトはfalseになります。 falseに設定されている場合、指定された URL に安全でないHTTPスキームが含まれている場合は、Data Federation は次のようなエラーを返します。

The insecure HTTP scheme is not supported by default - please add a "allowInsecure: true" flag to query from such URLs.
stores.[n].urls

任意。 データが保存される一般にアクセス可能なHTTP URLのコンマ区切りリスト。 認証が必要なURLは指定できません。

stores.[n].defaultFormat

任意。databases.[n].collections.[n].dataSources.[n].storeName を検索中に拡張子のないファイルを検出した場合に Atlas Data Federation が想定するデフォルトの形式。

defaultFormat フィールドでは、次の値が有効です。

.json, .json.gz, .bson, .bson.gz, .avro, .avro.gz, .orc, .tsv, .tsv.gz, .csv, .csv.gz, .parquet

注意

ファイル形式が CSV または TSV の場合、データにヘッダー行を含める必要があります。詳細については、「CSV および TSV」を参照してください。

省略した場合、Atlas Data Federation はファイルの数バイトを処理することでファイル タイプの検出を試みます。

指定された形式は、 オブジェクトで指定された URL storesにのみ適用されます。

Tip

以下も参照してください。

1"databases" : [
2 {
3 "name" : "<string>",
4 "collections" : [
5 {
6 "name" : "<string>",
7 "dataSources" : [
8 {
9 "storeName" : "<string>",
10 "allowInsecure" : <boolean>,
11 "urls" : ["<string>"],
12 "defaultFormat" : "<string>",
13 "provenanceFieldName": "<string>"
14 }
15 ]
16 }
17 ]
18 }
19]
databases

各オブジェクトがデータベース、そのコレクション、および任意でコレクション上のビューを表すオブジェクトの配列。各データベースには複数の collections および views オブジェクトを保持できます。

databases.[n].name

Atlas Data Federation がデータ ストアに含まれるデータをマッピングするデータベースの名前。

databases.[n].collections

各オブジェクトがstoresフェデレーティッドデータベースインスタンス ストアにマッピングするコレクションとデータソースを表すオブジェクトの配列。 動的に生成されたデータベースの場合、ストレージ構成で定義できるワイルドカード( * )のコレクション オブジェクトは 1 つだけです。

databases.[n].collections.[n].name

Atlas Data Federation が各 databases.[n].collections.[n].dataSources.[n].storeName に含まれるデータをマッピングするコレクションの名前。配列内の各オブジェクトは、コレクションと stores 配列内のオブジェクトとの間のマッピングを表します。

注意

ワイルドカード*コレクションは生成できません。

databases.[n].collections.[n].dataSources

各オブジェクトがコレクションにマッピングする stores フェデレーティッドデータベースインスタンス ストアを表すオブジェクトの配列。

databases.[n].collections.[n].dataSources.[n].storeName

<collection> にマッピングするフェデレーティッドデータベースインスタンス ストアの名前。stores 配列内のオブジェクトの name と一致する必要があります。

databases.[n].collections.[n].dataSources.[n].allowInsecure

任意。 指定されたURLのスキームを検証します。 値は次のいずれかになります。

  • true 安全でないHTTPスキームを許可する

  • false 安全なHTTPSスキームのみを許可します(デフォルト)

true の場合、Atlas Data Federation は次のように動作します。

  • サーバーの証明書チェーンとホスト名を検証しません。

  • サーバーによって提示されたホスト名を持つ任意の証明書を受け入れます。

警告:これをtrueに設定すると、データが中間者攻撃(man-in-the-middle attack)に対して脆弱になり、データの機密性と整合性が損なわれる可能性があります。 Atlas Data Federation のテストと使用を開始する場合のみ、これをtrueに設定します。

省略した場合、デフォルトはfalseになります。 falseに設定されている場合、指定された URL に安全でないHTTPスキームが含まれている場合は、Data Federation は次のようなエラーを返します。

The insecure HTTP scheme is not supported by default - please add a "allowInsecure: true" flag to query from such URLs.
databases.[n].collections.[n].dataSources.[n].urls

任意。 データが保存される一般にアクセス可能なURLのコンマ区切りリスト。 フェデレーティッドデータベースインスタンスは、各URLのパーティションを作成します。 urlsに含まれていないURLを指定できます。ただし、コレクションにはurlsurlsの両方のURLからのデータの和集合が含まれます。 省略した場合、Data Federation は指定された でurls storeNameを使用します。

databases.[n].collections.[n].dataSources.[n].defaultFormat

任意。databases.[n].collections.[n].dataSources.[n].storeName を検索中に拡張子のないファイルを検出した場合に Atlas Data Federation が想定するデフォルトの形式。

defaultFormat フィールドでは、次の値が有効です。

.json, .json.gz, .bson, .bson.gz, .avro, .avro.gz, .orc, .tsv, .tsv.gz, .csv, .csv.gz, .parquet

注意

ファイル形式が CSV または TSV の場合、データにヘッダー行を含める必要があります。詳細については、「CSV および TSV」を参照してください。

省略した場合、Atlas Data Federation はファイルの数バイトを処理することでファイル タイプの検出を試みます。

指定された形式は、 オブジェクトで指定された URL databases.[n].collections.[n].dataSourcesにのみ適用されます。

Tip

以下も参照してください。

databases.[n].collections.[n].dataSources.[n].provenanceFieldName

結果にドキュメントの出所が含まれるフィールドの名前。ストレージ構成でこの設定を指定すると、Atlas Data Federation は結果の各ドキュメントに対して次のフィールドを返します。

フィールド名
説明
provider
フェデレーティッドデータベースインスタンス ストレージ構成のプロバイダー(stores.[n].provider
uri
ドキュメントのHTTPまたはHTTPS URLdatabases.[n].collections.[n].dataSources.[n].urls

Atlas UI のビジュアル エディターを使用してこの設定を構成することはできません。

databases.[n].views

各オブジェクトがコレクション上の集計パイプラインを表すオブジェクトの配列。ビューの詳細については、「ビュー」を参照してください。

databases.[n].views.[n].name

ビューの名前。

databases.[n].views.[n].source

ビューのソース コレクションの名前。$sql ステージでビューを作成する場合は、SQL ステートメントでソース コレクションが指定されるため、このフィールドを省略する必要があります。

databases.[n].views.[n].pipeline

source コレクションに適用する 集計パイプラインステージ$sql ステージを使用してビューを作成することもできます。

戻る

コレクションの生成