Docs Menu
Docs Home
/
MongoDB Atlas
/ /

Google Cloud Platform Google Cloud Platform 스토리지 버킷

이 페이지의 내용

  • Google Cloud Platform 스토리지 Google Cloud Platform 버킷 구성 예시
  • 구성 형식

Atlas Data Federation Atlas GCP Data Federation 은 연합 데이터베이스 인스턴스 저장소로 GCP Storage 버킷을 지원합니다. 데이터에 대한 쿼리를 실행 하려면 연합 데이터베이스 인스턴스 에서 Cloud Storage 버킷에 대한 매핑을 정의해야 합니다.

참고

이 페이지에서는 객체를 파일이라고 하고 구분 기호로 구분된 접두사를 디렉토리라고 합니다. 그러나 이러한 객체 저장 서비스는 실제로 파일 시스템이 아니며 모든 경우에 하드 드라이브의 파일과 동일한 동작을 하지 않습니다.

데이터 센터에서 수집한 데이터가 포함된 Google Cloud Platform Storage 버킷 을 예로 들어 보겠습니다.Google Cloud Platform datacenter-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 데이터베이스 datacenter-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 FederationAtlas Data Federation 은 Google Cloud Platform Storage 버킷 를 구문 분석하고 Google Cloud Platform datacenter-alpha 에 있는 모든 파일을 /metrics/hardware/ 처리합니다. collections 객체 는 경로 구문 분석 구문을 사용하여 date 8601 각 문서 의 필드 (ISO- 날짜)에 파일 이름을 매핑합니다. 일치하는 date 필드 가 문서 에 없는 경우 Atlas Data Federation 이 해당 필드를 추가합니다.

연합 데이터베이스 인스턴스 에 연결된 사용자는 MongoDB MongoDB 쿼리 언어 및 지원되는 애그리게이션을 사용하여 컬렉션 을 통해 GCP GCP 스토리지 버킷의 데이터를 분석 할 수 datacenter-alpha-metrics.hardware 있습니다.

Atlas Data Federation Google 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
필드
유형
필요성
설명

stores

배열

필수 사항

각 객체가 연합 데이터베이스 인스턴스와 연결할 데이터 저장소를 나타내는 객체 배열입니다. 연합 데이터베이스 인스턴스 저장소는 다음을 캡처합니다.

  • Google Google Cloud Platform Cloud Platform 스토리지 버킷의 파일

  • Atlas 클러스터의 문서

  • 공개적으로 액세스할 수 있는 URL 에저장된 파일입니다.

Atlas Data Federation은 stores 객체에 정의된 데이터 저장소에만 액세스할 수 있습니다.

stores.[n]. name

문자열

필수 사항

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

stores.[n]. provider

문자열

필수 사항

데이터가 저장되는 cloud 제공자 의 이름입니다. Google Cloud Platform Storage 버킷의 값은 이어야 gcs 합니다.Google Cloud Platform

stores.[n]. region

문자열

필수 사항

Google Cloud Platform 스토리지 버킷이 호스팅되는 Google Cloud Platform 리전 의 이름입니다.Google Cloud Platform Google Cloud Platform 유효한 리전 이름 목록은 Google Cloud Platform (GCP)을 참조하세요.

stores.[n]. bucket

문자열

필수 사항

Google Google Cloud Platform Cloud Platform 스토리지 버킷의 이름입니다. Atlas Data Federation 이 액세스 해야 하는 Google Cloud Platform 저장소 버킷의 이름과 정확히 일치해야 합니다.Google Cloud Platform Atlas Data Federation

stores.[n]. prefix

문자열

옵션

Google Cloud Platform 스토리지 버킷에서 파일을 검색할 때 접두사 Atlas Data Federation 이 적용됩니다.Atlas Data Federation Google Cloud Platform 예를 예시 다음과 같은 구조의 Google Cloud Platform Google Cloud Platform Storage 버킷 을 가정해 보겠습니다.metrics

metrics
|--hardware
|--software
|--computed

연합 데이터베이스 인스턴스 저장 는 databases.[n].collections.[n].dataSources.[n].pathprefix 값을 추가하여 수집할 파일의 전체 경로를 만듭니다. prefix/software 로 설정하면 연합 데이터베이스 인스턴스 를 사용하는 모든 databases 객체가 /software 의 하위 경로로만 제한됩니다.

기본값은 Google Cloud Platform 모든 파일을 검색하는 Google Cloud Platform 스토리지 버킷의 루트입니다.

stores.[n]. delimiter

문자열

옵션

연합 데이터베이스 인스턴스 저장 에서 databases.[n].collections.[n].dataSources.[n].path 세그먼트를 구분하는 구분 기호입니다. Atlas Data Federation Atlas Google Cloud Platform Data Federation 은 구분 기호를 사용하여 시뮬레이션된 계층적 디렉토리 구조로 Google Cloud Platform Storage 버킷을 효율적으로 탐색합니다.

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 배열 의 객체 간의 매핑을 나타냅니다.

컬렉션 이름에 * 를 지정하고 경로 필드 에 collectionName() 함수를 지정하여 파일 경로에서 컬렉션 이름을 동적으로 생성할 수 있습니다. 예제는 파일 경로에서 동적 컬렉션 이름 생성을 참조하세요.

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

배열

필수 사항

각 객체 가 컬렉션 과 매핑할 stores 연합 데이터베이스 인스턴스 저장 를 나타내는 객체 배열입니다.

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

문자열

필수 사항

<collection> 에 매핑할 연합 데이터베이스 인스턴스 저장 의 이름입니다. stores 배열 에 있는 객체 의 name 과 일치해야 합니다.

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

문자열

필수 사항

Atlas Data Federation 이 파일을 <collection> 에 매핑하기 전에 databases.[n].collections.[n].dataSources.[n].storeName 에서 파일을 검색하고 구문 분석하는 방법을 제어합니다. 연합 데이터베이스 인스턴스 는 stores.[n].prefixpath 에 추가하여 그 안에서 검색 할 전체 경로를 빌드 합니다. prefix 경로의 모든 파일과 폴더를 캡처하려면 / 를 지정합니다.

예를 예시 다음과 같은 구조의 이라는 Google Cloud Platform Google Cloud Platform Storage 버킷을 가정해 보겠습니다.metrics

metrics
|--hardware
|--software
|--computed

/path는 Atlas Data Federation이 metrics 버킷에 있는 모든 파일 및 폴더를 검색하도록 지시합니다.

/hardwarepath은 수집할 파일에 대해 해당 경로만 검색하도록 Atlas Data Federation에 지시합니다.

stores.[n].prefixsoftware 인 경우 Atlas Data Federation 은 /software/computed 경로에 있는 파일만 검색합니다.

경로에 * 와일드카드 문자를 추가하면 Atlas Data Federation이 경로에서 해당 지점에 있는 모든 파일과 폴더를 포함하도록 지시합니다. 예를 들어, /software/computed*/software/computed-detailed, /software/computedArchive, /software/computed/errors 등의 파일과 일치합니다.

databases.[n].collections.[n].dataSources.[n].path 다음을 포함하여 파일 이름 구문 분석을 위한 추가 구문을 지원합니다.

  • 파일 이름에서 문서 필드를 생성합니다.

  • 표현식을 사용하여 필드 생성을 제어합니다.

  • 타임스탬프별로 파일 이름을 버킷에 넣기 위한 경계를 설정합니다.

자세한 내용은 S3 데이터 경로 정의를 참조하세요.

path를 지정할 때:

  • 파티션 속성에 대한 데이터 유형을 지정합니다.

  • 파티션 속성 유형이 구문 분석할 데이터 유형과 일치하는지 확인합니다.

  • delimiter에 지정된 구분자를 사용합니다.

동일한 유형의 속성을 지정하는 경우 다음 중 하나를 수행하세요.

  • 속성 사이에 상수 구분 기호를 추가합니다.

  • 정규 표현식을 사용하여 검색 패턴을 설명합니다. 자세히 보려면 Unsupported Parsing Functions 참조합니다.

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.[n]. provenanceFieldName

문자열

옵션

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

필드 이름
설명

provider

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

region

Google Cloud Platform Google Cloud Platform 리전stores.[n].region()

bucket

Google Cloud Platform Google Cloud Platform 스토리지 버킷의stores.[n].bucket 이름()

key

문서 의 경로(databases.[n].collections.[n].dataSources.[n].path)

lastModified

문서가 마지막으로 수정된 날짜와 시간입니다.

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

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

부울

옵션

Atlas Data Federation이 컬렉션의 문서에 추가하는 속성(키 및 값 쌍)을 생략할지 여부를 지정하는 플래그입니다. 다음 값 중 하나를 지정할 수 있습니다.

  • false - 속성 추가

  • true - 속성 생략

생략하면 기본적으로 false가 설정되고 Atlas Data Federation이 속성을 추가합니다.

예를 예시, databases.[n].collections.[n].dataSources.[n].path /employees/{phone string}를 구성하는 /employees/949-555-0195.json 파일 을 생각해 보겠습니다. Atlas Data Federation 은 키-값 쌍이 문서 에 이미 존재하는지 여부에 관계없이 omitAttributesfalse 인 경우 이 파일 의 문서에 phone: 949-555-0195 속성을 추가합니다. omitAttributestrue 로 설정하다 하면 Atlas Data Federation 은 가상 컬렉션 의 문서 에 속성을 추가하지 않습니다.

돌아가기

배포