메타데이터 제휴 서비스 만들기

이 페이지에서는 Dataproc Metastore에 대해 메타데이터 제휴 서비스를 만드는 방법을 설명합니다. 제휴 서비스를 사용하면 단일 gRPC 엔드포인트에서 여러 소스에 저장된 메타데이터에 액세스할 수 있습니다.

제휴 작동 방법과 제한사항에 대한 자세한 내용은 메타데이터 제휴 정보를 참조하세요.

시작하기 전에

필요한 역할

최소 권한의 원칙에 따라 제휴 서비스를 만들고 Dataproc 클러스터를 연결하는 데 필요한 권한을 얻으려면 관리자에게 다음 IAM 역할을 부여해 달라고 요청하세요.

  • 제휴 서비스에 액세스하려면 사용자 계정 또는 서비스 계정에 대한 제휴 접근자 역할(roles/metastore.federationAccessor)이 필요합니다.
  • Dataproc Metastore 리소스에 대해 전체 제어 권한을 부여하려면 사용자 계정 또는 서비스 계정에 대한 Dataproc Metastore 편집자 역할(roles/metastore.editor)이 필요합니다.
  • 제휴 서비스로 구성된 Dataproc Metastore에서 메타데이터 작업을 완료하려면 사용자 계정 또는 서비스 계정에 대한 Metastore 소유자 역할(metastore.metadataEditor)이 필요합니다.
  • Dataproc 클러스터를 만들려면 Dataproc VM 서비스 계정에 대한 Dataproc 작업자 역할(roles/dataproc.worker)이 필요합니다.
  • (선택사항) BigQuery 데이터 세트에 액세스하려면 사용자 계정 또는 서비스 계정에서 사용 사례에 적용할 수 있는 적합한 BigQuery 사전 정의된 역할을 사용합니다.
  • (선택사항) Dataplex 레이크(미리보기)에 액세스하려면 사용자 계정 또는 서비스 계정에서 사용 사례에 적합한 Dataplex 사전 정의된 역할을 사용합니다.

역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.

이러한 사전 정의된 역할에는 최소 권한의 원칙에 따라 제휴 서비스를 만들고 Dataproc 클러스터를 연결하는 데 필요한 권한이 포함됩니다. 필요한 정확한 권한을 보려면 필수 권한 섹션을 펼치세요.

필수 권한

최소 권한의 원칙에 따라 제휴 서비스를 만들고 Dataproc 클러스터를 연결하려면 다음 권한이 필요합니다.

  • Dataproc Metastore를 만들려면 사용자 계정 또는 서비스 계정에 대한 metastore.services.create 권한이 필요합니다.
  • 제휴 서비스 나열, 가져오기, 만들기, 업데이트, 삭제를 수행하려면 사용자 계정 또는 서비스 계정에 대한 metastore.federations.create, metastore.federations.update, metastore.federations.delete, metastore.federations.get metastore.federations.list 권한이 필요합니다.
  • Dataproc Metastore에서 메타데이터 작업을 수행하려면 사용자 계정 또는 서비스 계정에 대한 metastore.services.get, metastore.services.use, metastore.databases.create, metastore.databases.update, metastore.databases.deletemetastore.databases.get,metastore.databases.list, metastore.databases.getIamPolicy, metastore.tables.create, metastore.tables.update, metastore.tables.delete, metastore.tables.get, metastore.tables.list, metastore.tables.getIamPolicy 권한이 필요합니다.
  • (선택사항) BigQuery 데이터 세트에 액세스하려면 사용자 계정 또는 서비스 계정에 대한 For more information, see BigQuery permissions 권한이 필요합니다.
  • (선택사항) Dataplex Lakes(미리보기)에 액세스하려면 사용자 계정 또는 서비스 계정에 대한 For more information, see Dataplex permissions 권한이 필요합니다.

커스텀 역할이나 다른 사전 정의된 역할을 사용하여 이 권한을 부여받을 수도 있습니다.

특정 Dataproc Metastore 역할 및 권한에 대한 상세 설명은 IAM으로 Dataproc Metastore 액세스 관리를 참조하세요.

제휴 서비스 만들기

다음 안내에서는 제휴 서비스를 만들고 이를 소스에 연결하는 방법을 보여줍니다. 이 단계를 완료한 후에는 Dataproc 클러스터에 제휴 서비스를 연결할 수 있습니다.

제휴 소스 및 해당 제한사항에 대해 자세히 알아보려면 메타데이터 소스를 참조하세요.

콘솔

  1. Google Cloud 콘솔에서 Dataproc Metastore 페이지를 엽니다.

    Dataproc Metastore 열기

  2. Dataproc 탐색 메뉴에서 제휴를 클릭합니다.

    제휴된 메타스토어 서비스 페이지가 열립니다.

  3. 제휴된 메타스토어 메뉴 바에서 만들기를 클릭합니다.

    제휴 서비스 만들기 페이지가 열립니다.

  4. 제휴 이름 필드에 서비스의 고유 이름을 입력합니다.

    자세한 내용은 리소스 이름 지정 규칙을 참조하세요.

  5. 데이터 위치를 선택합니다.

    Dataproc Metastore 소스와 동일한 리전에 제휴 서비스를 만들어야 합니다.

  6. Hive 버전을 선택합니다.

  7. 제휴 서비스의 소스를 추가하려면 소스 추가를 클릭합니다.

    하나 이상의 소스를 추가할 수 있습니다. 이 목록에 추가하는 첫 번째 소스가 자동으로 기본 메타스토어로 설정됩니다. 만든 후에 소스 순서를 업데이트할 수 있습니다.

    1. 소스 유형으로 제휴 소스를 선택합니다.

      Dataproc Metastore 인스턴스, 하나 이상의 BigQuery 데이터 세트가 포함된 프로젝트, Dataplex 레이크(미리보기)를 선택할 수 있습니다.

    2. 소스 필드에 다음 정보를 입력합니다.

      • Dataproc Metastore 서비스.

        1. 선택된 프로젝트 필드에서 찾아보기를 클릭하고 소스로 사용할 Dataproc Metastore가 포함된 프로젝트를 선택합니다.

          Dataproc Metastore 소스가 제휴 서비스와 호환되는 Hive 버전을 사용 중인지 확인합니다. 기본 메타스토어는 제휴 서비스보다 크거나 같은 Hive 버전을 사용해야 합니다.

        2. Metastore 서비스 드롭다운에서 소스로 사용하려는 Dataproc Metastore를 선택합니다.

      • BigQuery용. 선택된 프로젝트 필드에서 찾아보기를 클릭하고 BigQuery 데이터 세트가 포함된 프로젝트의 프로젝트 ID를 선택합니다.

      • Dataplex(미리보기). 선택된 프로젝트 필드에서 찾아보기를 클릭하고 Dataplex Lake가 포함된 프로젝트의 프로젝트 ID를 선택합니다.

    3. 완료를 클릭합니다.

  8. 서비스를 만들고 시작하려면 제출을 클릭합니다.

    이제 Dataproc 클러스터에 페더레이션 서비스를 연결할 수 있습니다.

제휴 서비스 업데이트

다음 안내에서는 제휴 서비스를 업데이트하는 방법을 보여줍니다. 다음 작업을 완료할 수 있습니다.

  • 소스를 제휴 서비스에 추가합니다.
  • 제휴 서비스에서 소스를 삭제합니다.
  • 제휴 서비스에 포함된 소스의 소스 순서를 변경합니다.
  • 제휴 서비스를 영구적으로 삭제합니다. 서비스를 삭제하면 모든 리소스가 해제됩니다.

콘솔

  1. Google Cloud 콘솔에서 Dataproc Metastore 페이지를 엽니다.

    Dataproc Metastore 열기

  2. Dataproc 탐색 메뉴에서 제휴를 클릭합니다.

    제휴된 메타스토어 서비스 페이지가 열립니다.

  3. 제휴된 메타스토어 서비스 페이지에서 업데이트하려는 서비스 이름을 클릭합니다.

    서비스 세부정보 페이지가 열립니다.

  4. 메뉴 바에서 수정을 클릭합니다.

    서비스 수정 페이지가 열립니다.

  5. 업데이트할 값을 선택합니다.

  6. 서비스를 업데이트하려면 제출을 클릭합니다.

제휴 서비스에 Dataproc 클러스터 연결

다음 안내에서는 Dataproc 클러스터를 만들고 제휴 서비스 엔드포인트를 해당 메타스토어로 연결하는 방법을 보여줍니다.

이 안내를 시작하려면 먼저 시작하기 전에에 나열된 모든 단계를 수행하고 제휴 서비스를 만듭니다.

gcloud CLI

Dataproc 클러스터를 만들고 제휴 엔드포인트를 연결하려면 다음 gcloud Dataproc clusters create 명령어를 실행합니다.

 gcloud dataproc clusters create CLUSTER_NAME \
    --region=LOCATION \
    --project=PROJECT_ID \
    --scopes=https://www.googleapis.com/auth/cloud-platform \
    --image-version=IMAGE_VERSION \
    --service-account=SERVICE_ACCOUNT \
    --optional-components=DOCKER \
    --initialization-actions=gs://metastore-init-actions/metastore-grpc-proxy/metastore-grpc-proxy.sh \
    --metadata="proxy-uri=FEDERATION_URI,hive-version=FEDERATION_VERSION" \
    --properties="hive:hive.metastore.uris=thrift://localhost:9083,hive:hive.metastore.warehouse.dir=WAREHOUSE_DIR"

다음을 바꿉니다.

  • CLUSTER_NAME: 새 Dataproc 클러스터 이름입니다.
  • PROJECT_ID: Dataproc 클러스터를 만들려는 프로젝트의 Google Cloud 프로젝트 ID입니다.
  • LOCATION: Dataproc 클러스터의 리전입니다.
  • IMAGE_VERSION: 사용할 Dataproc 이미지 버전입니다.

    이 명령어에 사용 중인 Dataproc 이미지가 제휴 서비스에 사용된 Hive 버전과 호환되는지 확인합니다. 자세한 내용은 Dataproc 이미지 버전 목록을 참조하세요.

  • SERVICE_ACCOUNT 선택사항: Dataproc 클러스터를 만드는 데 사용하는 서비스 계정입니다. 지정하지 않으면 클러스터에 기본 Compute Engine 서비스 계정이 사용됩니다.

  • FEDERATION_URI: 제휴 서비스의 엔드포인트 URI입니다.

  • FEDERATION_VERSION: 제휴 서비스에서 사용 중인 Hive 버전입니다.

  • WAREHOUSE_DIR: 기본 Dataproc Metastore의 웨어하우스 디렉터리입니다.

다음 단계