Docs Menu
Docs Home
/
Atlas
/ /

HTTP URL

Atlas Data Federation은 연합 데이터베이스 인스턴스 저장소로 공개적으로 액세스할 수 있는 URL을 지원합니다. 데이터에 대한 쿼리를 실행하려면 연합 데이터베이스 인스턴스에서 HTTP 데이터 저장소에 대한 매핑을 정의해야 합니다.

중요

스토리지 구성의 정보는 MongoDB에서 내부적으로 볼 수 있으며, Atlas Data Federation의 성능을 모니터링하고 개선하기 위해 운영 데이터로 저장됩니다. 따라서 구성에 PII 를 사용하지 않는 것이 좋습니다.

데이터 센터에서 수집한 데이터를 포함하는 URL https://www.datacenter-hardware.com/data.json, https://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"
}
]
}
]
}
]
}

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

배열

필수

각 객체 연합 데이터베이스 인스턴스 와 연결할 데이터 저장 나타내는 객체 배열입니다. 연합 데이터베이스 인스턴스 저장 공개적으로 액세스할 수 있는 URL에 저장된 파일을 캡처합니다. Atlas Data Federation stores 객체 에 정의된 데이터 저장소에만 액세스 할 수 있습니다.

stores.[n].name

문자열

필수

연합 데이터베이스 인스턴스 저장 의 이름입니다. databases.[n].collections.[n].dataSources.[n].storeName 필드 매핑 구성의 일부로 이 값을 참조합니다.

stores.[n].provider

문자열

필수

데이터가 저장되는 위치를 정의합니다. 값은 다음 중 하나일 수 있습니다.
  • s3 Amazon Web Services S3 버킷의 경우.

  • atlas Atlas cluster의 collection에 해당합니다.

  • http 공개적으로 액세스할 수 있는 URL에 호스팅된 파일의 데이터에 해당합니다.

stores.[n].allowInsecure

부울

필수

선택 사항. 지정된 URL의 체계의 유효성을 검사합니다. 값은 다음 중 하나일 수 있습니다.

  • true 안전하지 않은 HTTP 체계 허용

  • false 보안 HTTPS 체계만 허용합니다(기본값).

true(참)인 경우 Atlas Data Federation:

  • 서버의 인증서 체인과 호스트 이름을 확인하지 않습니다.

  • 서버에서 제공하는 모든 호스트 이름을 가진 모든 인증서를 수락합니다.

경고: 이 값을 true 로 설정하다 하면 데이터가 중간자(man-in-the-middle) 공격에 취약해져 데이터의 기밀성과 무결성이 손상될 수 있습니다. 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

문자열

옵션

Data Federation이 databases.[n].collections.[n].dataSources.[n].storeName을 검색하는 동안 확장명이 없는 파일을 발견하는 경우 가정하는 기본 형식입니다.

defaultFormat 필드에 유효한 값은 다음과 같습니다.

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

중요: 파일 형식이 CSV 또는 TSV인 경우 데이터에 헤더 행을 포함해야 합니다. 자세한 내용은 CSV 및 TSV를 참조하세요.

이를 생략할 경우 Data Federation은 일부 파일 바이트를 처리하여 파일 형식을 감지하려고 시도합니다.

지정된 형식은 객체에 stores 지정된 URL 에만 적용됩니다.

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

배열

필수

각 객체 가 데이터베이스, 해당 컬렉션 및 선택적으로 컬렉션의뷰를 나타내는 객체 배열입니다. 각 데이터베이스 에는 여러 개의 collectionsviews 객체가 있을 수 있습니다.

databases.[n].name

문자열

필수

Atlas Data Federation이 데이터 저장소에 포함된 데이터를 매핑하는 데이터베이스의 이름입니다.

databases.[n].collections

배열

필수

각 객체는 stores 연합 데이터베이스 인스턴스 저장에 매핑되는 컬렉션 및 데이터 소스를 나타내는 객체 배열입니다. 동적으로 생성된 데이터베이스의 경우 저장 구성에서 와일드카드(*) 컬렉션 객체 하나만 정의할 수 있습니다.

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

문자열

필수

Atlas Data Federation 각 databases.[n].collections.[n].dataSources.[n].storeName에 포함된 데이터를 매핑하는 컬렉션의 이름입니다. 배열 의 각 객체 는 컬렉션 과 stores 배열 의 객체 간의 매핑을 나타냅니다.

중요

와일드카드 * 컬렉션은 HTTP (하이퍼텍스트 전송 프로토콜) 저장소에 사용할 수 없습니다.

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) 공격에 취약해져 데이터의 기밀성과 무결성이 손상될 수 있습니다. 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에 대한 파티션을 생성합니다. 에 없는 URL 을 urls 지정할 수 urls 있습니다. 그러나 urls컬렉션 및 모두에 있는 URL 의 데이터 통합이 포함됩니다.

생략하면 Data Federation 지정된 에서 을(를) urls storeName사용합니다.

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

문자열

옵션

Data Federation이 databases.[n].collections.[n].dataSources.[n].storeName을 검색하는 동안 확장명이 없는 파일을 발견하는 경우 가정하는 기본 형식입니다.

defaultFormat 필드에 유효한 값은 다음과 같습니다.

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

중요: 파일 형식이 CSV 또는 TSV인 경우 데이터에 헤더 행을 포함해야 합니다. 자세한 내용은 CSV 및 TSV를 참조하세요.

이를 생략할 경우 Data Federation은 일부 파일 바이트를 처리하여 파일 형식을 감지하려고 시도합니다.

지정된 형식은 객체에 databases.[n].collections.[n].dataSources 지정된 URL 에만 적용됩니다.

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

문자열

필수

결과에 있는 문서의 출처를 포함하는 필드의 이름입니다. 스토리지 구성에서 이 설정을 지정하면 Atlas Data Federation은 결과의 각 문서에 대해 다음 필드를 반환합니다.

필드 이름
설명

provider

연합 데이터베이스 인스턴스stores.[n].provider 저장 구성의 제공자( )

uri

문서 의HTTP 또는databases.[n].collections.[n].dataSources.[n].urls HTTPS URL ( )

Atlas UI의 비주얼 편집기를 사용하여 이 설정을 구성할 수 없습니다.

databases.[n].views

배열

필수

각 객체가 컬렉션의 집계 파이프라인을 나타내는 객체의 배열입니다. 보기에 대해 자세히 알아보려면 보기를 참조하세요.

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

문자열

필수

뷰의 이름을 지정합니다.

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

문자열

필수

뷰에 대한 소스 컬렉션 의 이름입니다. $sql 단계를 사용하여 뷰를 만들려면 SQL 성명서 소스 컬렉션 지정하므로 이 필드 생략해야 합니다.

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

배열

필수

컬렉션 에 적용 할집계 source 파이프라인 단계입니다. $sql 단계를 사용하여 뷰를 만들 수도 있습니다.

데이터 센터에서 수집한 데이터가 포함된 URL,, 를 생각해 보세요. https://www.datacenter-hardware.com/data.jsonhttps://www.datacenter-software.com/data.json https://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"
}
]
}
]
}
]
}

돌아가기

collection을 생성합니다.

이 페이지의 내용