문서 메뉴
문서 홈
/
MongoDB 아틀라스
/ / /

연합 데이터베이스 인스턴스 배포

이 페이지의 내용

  • 전제 조건
  • 절차

이 페이지에서는 Azure Blob Storage 컨테이너의 데이터에 액세스하기 위해 연합 데이터베이스 인스턴스를 배포하는 방법을 설명합니다.

시작하기 전에 다음 사전 요구 사항을 완료하세요.

  • 아직 계정이 없는 경우 MongoDB Atlas 계정을 만듭니다.

  • Azure PowerShell 설치 또는 Azure CLI. 이러한 도구에 대해 자세히 알아보려면 올바른 Azure 명령줄 도구 선택을 참조하세요.

  • Azure PowerShell 구성또는 Azure CLI.

  • 선택 사항. Azure 서비스 주체 액세스를 설정합니다.

Atlas CLI를 사용하여 새 Data Federation 데이터베이스를 생성하려면 다음 명령을 실행합니다.

atlas dataFederation create <name> [options]

명령 구문 및 매개변수에 대해 자세히 알아보려면 atlas dataFederation create에 대한 Atlas CLI 설명서를 참조하세요.

참조: 관련 링크

1
2
3
  1. Create New Federated Database 드롭다운을 클릭합니다.

  2. Manual Setup0}을 선택합니다.

4

Amazon Web Services 또는 Azure 를 선택할 수 있습니다. 연합 데이터베이스 인스턴스가 생성되면, Atlas Data Federation이 쿼리를 처리하는 클라우드 공급자를 변경할 수 없습니다.

Azure Blob Storage container의 데이터에 대해 연합 데이터베이스 인스턴스를 구성하는 경우 데이터를 호스팅하는 cloud 공급자와 다른 cloud 공급자를 선택할 수 없습니다. 즉, Azure 를 선택해야 합니다.

5

기본값은 FederatedDatabaseInstance[n] 입니다. 연합 데이터베이스 인스턴스가 생성되면 이름을 변경할 수 없습니다.

6
  • 안내를 따라 진행하고자 할 때는 Visual Editor를 클릭합니다.

  • 원시 JSON 을 편집하려면 JSON Editor 를 클릭합니다.

7
1

Add Data Sources 을 클릭하여 데이터 저장소를 선택합니다.

2

Azure Blob Storage 컨테이너의 데이터에 대한 연합 데이터베이스 인스턴스를 구성하려면 Azure 를 선택합니다.

stores.[n].provider JSON 구성 설정에 해당합니다.

3

서비스 주체 드롭다운에서 Atlas에 인증된 기존 Azure 서비스 주체를 선택하거나 Authorize an Azure Service Principal 를 선택하여 새 서비스 주체를 인증할 수 있습니다.

Atlas에 권한이 부여된 기존 서비스 주체를 선택한 경우 다음 단계로 진행하세요.

기존 서비스 주체에 대해 Atlas를 승인하거나 새 서비스 주체를 생성하는 경우 다음 단계로 진행하기 전에 다음 단계를 완료하세요.

  1. 새 서비스 주체 또는 기존 서비스 주체를 승인하려면 Authorize an Azure Service Principal 을 선택하고 Continue 을 클릭합니다.

    Add Atlas to your Azure Service Principal 섹션에서 Azure 서비스 주체 AppId 를 사용하여 기존 또는 새 Azure 서비스 주체를 통해 Atlas에 액세스 권한을 부여합니다.

  2. Atlas UI의 PowerShell 또는 AzureCLI 탭에 설명된 단계에 따라 새 서비스 주체를 만들거나 기존 서비스 주체를 수정합니다.

  3. Atlas UI의 단계를 완료한 후 각 필드에 테넌트 ID 및 서비스 주체 ID를 입력합니다.

  4. 다음 단계로 진행하려면 Validate and Finish 을 클릭합니다.

4

Configure Azure Blob Storage 페이지에서 Azure Storage 계정 자격 증명 위임 및 Storage Container 액세스를 구성해야 합니다. 이를 수행하려면 다음을 수행합니다.

  1. Storage Account Credential Delegation 필드에 스토리지 계정 리소스 ID를 입력합니다.

    자세한 내용 은 스토리지 계정의 리소스 ID 가져오기를 참조하세요.

  2. Azure PowerShell의 Storage Account Credential Delegation 단계에서 명령을 복사하고 실행하여 자격 증명 위임을 설정합니다.

  3. 스토리지 컨테이너가 Read only 또는 Read and write 작업을 허용할지 여부를 지정합니다.

    Atlas는 Read-only 컨테이너만 쿼리할 수 있습니다. 쿼리 결과를 쿼리하고 Azure Blob Storage 컨테이너에 저장하려면 Read and write 을(를) 선택합니다.

    Atlas Data Federation은 $out 을(를) 사용하여 Azure Blob Storage 컨테이너에 대한 쓰기를 지원하지 않습니다.

  4. 스토리지 컨테이너 이름을 입력합니다.

  5. Azure PowerShell의 Storage Container Access 단계에 표시된 명령을 복사하고 실행하여 Blob 컨테이너 액세스를 설정합니다.

  6. Continue를 클릭합니다.

5
  1. Azure Blob Storage 컨테이너의 스토리지 경로를 입력합니다.

    예를 들면 다음과 같습니다.

    https://<storage-account>.blob.core.windows.net/<container>/<file-name>

    Azure Blob Storage 컨테이너의 데이터에 경로를 추가하려면 Add Data Source 을 클릭하고 경로를 입력합니다. 경로에 대해 자세히 알아보려면 S3 데이터의 경로 정의를 참조하세요.

    databases.[n].collections.[n].dataSources.[n].path JSON 구성 설정에 해당합니다.

  2. 선택 사항. Data Federation이 Azure Blob Storage 컨테이너의 파일을 검색할 때 사용해야 하는 파티션 필드와 필드 값 유형을 지정합니다.

    생략하면 Data Federation은 Azure Blob Storage 컨테이너의 루트에서 모든 파일을 재귀적으로 검색합니다. 특정 필드 값 유형을 선택하지 않으면 Data Federation은 모든 쿼리에서 해당 경로에 있는 값을 추가합니다.

    stores.[n].prefixdatabases.[n].collections.[n].dataSources.[n].path JSON 구성 설정에 해당합니다.

6
  1. (선택 사항) 다음을 클릭합니다. 의 경우:

    • 데이터베이스를 클릭하여 데이터베이스 이름을 편집합니다. 기본값은 VirtualDatabase[n] 입니다.

      databases.[n].name JSON 구성 설정에 해당합니다.

    • 컬렉션을 클릭하여 컬렉션 이름을 편집합니다. 기본값은 VirtualCollection[n] 입니다.

      databases.[n].collections.[n].name JSON 구성 설정에 해당합니다.

    • 보기 이름을 편집하려면 보기를 클릭합니다.

    다음을 클릭할 수 있습니다.

    • Add Database 데이터베이스 및 컬렉션을 추가합니다.

    • 데이터베이스에 컬렉션을 추가하기 위해 데이터베이스와 연결됩니다.

    • 을(를) 사용하여 컬렉션에 대한 를 추가합니다. 뷰를 만들려면 다음을 지정해야 합니다.

      • 뷰의 이름을 지정합니다.

      • 뷰에 적용할 파이프라인 입니다.

        뷰 정의 파이프라인은 $out 또는 $merge 단계를 포함할 수 없습니다. 뷰 정의에 $lookup 또는 $facet 와 같은 중첩된 파이프라인 단계가 포함된 경우 이 제한은 해당 중첩된 파이프라인에도 적용됩니다.

      뷰에 대해 자세히 알아보려면 다음을 참조하세요.

    • 데이터베이스, 컬렉션 또는 뷰와 연결된 항목을 제거합니다.

  2. Data Sources 섹션의 드롭다운에서 Azure Blob Storage 를 선택합니다.

  3. 데이터 저장소를 드래그 앤 드롭하여 컬렉션과 매핑합니다.

    databases.[n].collections.[n].dataSources JSON 구성 설정에 해당합니다.

Azure Blob Storage 데이터 저장소에 대한 구성은 다음과 유사해야 합니다.

{
"stores" : [
{
"name" : "<string>",
"provider": "<string>",
"region" : "<string>",
"serviceURL" : "<string>",
"containerName" : "<string>",
"delimiter" : "<string>",
"prefix": "<string>",
"public": <boolean>
}
],
"databases" : [
{
"name" : "<string>",
"collections" : [
{
"name" : "<string>",
"dataSources" : [
{
"storeName" : "<string>",
"path" : "<string>",
"defaultFormat" : "<string>",
"provenanceFieldName": "<string>",
"omitAttributes": <boolean>
}
]
}
],
"maxWildcardCollections" : <integer>,
"views" : [
{
"name" : "<string>",
"source" : "<string>",
"pipeline" : "<string>"
}
]
}
]
}

구성 설정에 대한 자세한 내용 은 연합 데이터베이스 인스턴스에 대한 데이터 저장소 정의를 참조하세요.

1

stores 에 대한 UI에 표시된 JSON 구성 설정을 편집합니다. stores 구성 설정은 다음과 유사해야 합니다.

"stores" : [
{
"name" : "<string>",
"provider" : "<string>",
"region" : "<string>",
"serviceURL" : "<string>",
"containerName" : "<string>",
"delimiter": "<string",
"prefix" : "<string>",
"public": <boolean>
}
]

이러한 구성 설정에 대해 자세히 알아보려면 stores 를 참조하세요.

2

databases 에 대한 UI에 표시된 JSON 구성 설정을 편집합니다. databases 구성 설정은 다음과 유사해야 합니다.

"databases" : [
{
"name" : "<string>",
"collections" : [
{
"name" : "<string>",
"dataSources" : [
{
"storeName" : "<string>",
"defaultFormat" : "<string>",
"path" : "<string>",
"provenanceFieldName": "<string>",
"omitAttributes": <boolean>
}
]
}
],
"maxWildcardCollections" : <integer>,
"views" : [
{
"name" : "<string>",
"source" : "<string>",
"pipeline" : "<string>"
}
]
}
]

이러한 구성 설정에 대해 자세히 알아보려면 databases 를 참조하세요.

8

연합 쿼리에 대한 다른 데이터 저장소를 추가하려면 다음을 참조하세요.

참고

다양한 cloud 공급자 간에 연합 쿼리를 실행 하기 위한 Amazon Web Services 데이터 저장소를 생성할 수 없습니다.

9

돌아가기

Azure Blob 저장

이 페이지의 내용