이 문서에서는 용어집 가져오기 유틸리티를 사용하여 Google 시트에서 Knowledge Catalog (이전 명칭: Dataplex Universal Catalog)로 용어집, 카테고리, 용어를 일괄 가져오는 방법을 설명합니다.
glossary_import 유틸리티는 Google 시트의 데이터를 파싱하고 검증하여 Knowledge Catalog CreateMetadataJob API와 호환되는 형식으로 변환하고 가져오기 작업을 트리거하기 전에 Cloud Storage 버킷에 업로드합니다.
시작하기 전에
용어집을 가져오기 전에 다음 기본 요건을 완료하세요.
서비스 계정 설정
Google 시트를 사용하여 가져오기 유틸리티를 실행하려면 Google Sheets API에 액세스하고 사용자 인증 정보를 가장하는 데 필요한 권한이 있는 서비스 계정을 설정해야 합니다.
서비스 계정을 식별하거나 만듭니다.
가져오기 유틸리티를 실행하는 프로젝트에서 기존 서비스 계정을 선택하거나 새 서비스 계정을 만듭니다. 자세한 내용은 서비스 계정 만들기를 참고하세요. 서비스 계정 이메일(예:
SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com)을 기록해 둡니다.서비스 계정 가장을 구성합니다.
가져오기 유틸리티 스크립트를 로컬로 실행하려면 사용자 계정에 서비스 계정을 가장할 수 있는 권한이 있어야 합니다. 사용자 계정에 서비스 계정에 대한 서비스 계정 토큰 생성자 역할 (
roles/iam.serviceAccountTokenCreator)을 부여합니다.자세한 내용은 서비스 계정에 대한 액세스 관리를 참고하세요.
서비스 계정
Editor에 Google Sheets에 대한 액세스 권한을 부여합니다.가져오기 프로세스에 사용할 Google 시트를 열고 공유를 클릭한 다음 서비스 계정 이메일을
Editor로 추가합니다. 이 권한을 사용하면 서비스 계정이 시트에서 데이터를 읽거나 시트에 데이터를 쓸 수 있습니다.
Cloud Storage 버킷 만들기
가져오기 파일의 스테이징 영역 역할을 할 Cloud Storage 버킷을 만듭니다.
필요한 역할
서비스 계정에 Google 시트에서 용어를 가져오는 데 필요한 권한이 있는지 확인하려면 관리자에게 서비스 계정에 다음 IAM 역할을 부여해 달라고 요청하세요.
- 프로젝트에 대한 Dataplex 관리자 (
roles/dataplex.admin) - 프로젝트에 대한 Dataplex 카탈로그 관리자 (
roles/dataplex.catalogAdmin) - 프로젝트에 대한 Dataplex 카탈로그 편집자 (
roles/dataplex.catalogEditor) - Cloud Storage 버킷에 대한 스토리지 객체 관리자(
roles/storage.objectAdmin)
역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.
관리자는 커스텀 역할이나 다른 사전 정의된 역할을 통해 서비스 계정에 필요한 권한을 부여할 수도 있습니다.
API 사용 설정
용어집을 가져오려면 프로젝트에서 다음 API를 사용 설정하세요.
API 사용 설정에 필요한 역할
API를 사용 설정하려면 serviceusage.services.enable 권한이 포함된 서비스 사용량 관리자 IAM 역할(roles/serviceusage.serviceUsageAdmin)이 필요합니다. 역할 부여 방법 알아보기
Git 저장소 설정
dataplex-labs 저장소를 복제합니다.
git clone https://github.com/GoogleCloudPlatform/dataplex-labs.git cd dataplex-labs/dataplex-quickstart-labs/00-resources/scripts/python/business-glossary-import/dataplex-glossary/import
종속 항목 설치
필수 Python 종속 항목을 설치합니다.
pip3 install -r requirements.txt
패키지 설치에 문제가 발생하면 새 Python 개발 환경을 설정하세요.
서비스 계정 가장 인증 및 구성
Google Cloud CLI를 초기화하고 서비스 계정 가장을 사용하여 애플리케이션 기본 사용자 인증 정보 (ADC)로 인증합니다.
# Set your service account email address SA_EMAIL="SERVICE_ACCOUNT_EMAIL" # Authenticate ADC using service account impersonation and required scopes gcloud auth application-default login \ --impersonate-service-account="${SA_EMAIL}" \ --scopes="https://www.googleapis.com/auth/spreadsheets"
SERVICE_ACCOUNT_EMAIL을 서비스 계정 이메일 ID로 바꿉니다. 예를 들면 다음과 같습니다.
SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
가져오기를 위해 Google 시트 만들기 및 구조화
일괄 가져오기를 성공적으로 실행하려면 가져오기 유틸리티가 메타데이터 필드를 성공적으로 파싱하고 검증할 수 있도록 정확한 열 스키마를 사용하여 새 Google 시트를 만들어야 합니다. 서비스 계정에 Google Sheets에 대한 Editor 액세스 권한을 부여했는지 확인합니다.
시트의 첫 번째 행에는 대소문자를 구분하는 다음 스키마 헤더가 정확하게 포함되어야 합니다.
| 필드 | 필수 또는 선택사항 | 설명 |
|---|---|---|
id |
필수 | 용어집 내 용어 또는 카테고리의 고유 식별자입니다. |
parent |
선택사항 | 상위 카테고리의 ID입니다. 비어 있으면 항목이 용어집의 루트 수준 하위 요소입니다. 참조된 상위 ID는 시트에 있어야 하며 카테고리에 속해야 합니다. |
display_name |
필수 | 용어 또는 카테고리의 표시 이름입니다. |
description |
선택사항 | 용어 또는 카테고리에 대한 간략한 설명입니다. |
overview |
선택사항 | 용어 또는 카테고리에 대한 서식 있는 텍스트 설명입니다 (HTML 태그 지원). |
type |
필수 | 행 유형입니다. 유효한 값은 TERM 또는 CATEGORY입니다. |
contact1_email |
선택사항 | 용어 또는 카테고리의 기본 데이터 스튜어드의 이메일 주소입니다. |
contact1_name |
선택사항 | 용어 또는 카테고리의 기본 데이터 관리자의 이름입니다. |
contact2_email |
선택사항 | 용어 또는 카테고리의 보조 데이터 스튜어드의 이메일 주소입니다. |
contact2_name |
선택사항 | 용어 또는 카테고리의 보조 데이터 관리자 이름입니다. |
label1_key |
선택사항 | 첫 번째 할당된 라벨의 키입니다. |
label1_value |
선택사항 | 첫 번째 할당된 라벨의 값입니다. |
label2_key |
선택사항 | 두 번째 할당된 라벨의 키입니다. |
label2_value |
선택사항 | 두 번째 할당된 라벨의 값입니다. |
Google 시트에서 용어집 가져오기
환경을 설정하고 Google Sheets를 준비한 후 glossary_import.py 스크립트를 실행합니다.
python3 bg_import/dataplex-glossary/glossary_import.py
가져오기 유틸리티는 CreateMetadataJob API 실행 결과를 터미널에 직접 출력합니다. 작업 상태가 성공을 나타내는지 확인합니다.
로컬 실행 경로의 logs/ 디렉터리에서 실행 로그를 검토할 수 있습니다. 이러한 로그는 전송 프로세스를 감사하고 건너뛴 항목이나 서식 경고를 식별하는 데 도움이 됩니다.
다음 단계
- 비즈니스 용어집을 관리하는 방법을 알아보세요.
- JSON 파일을 사용하여 용어를 가져오는 방법을 알아보세요.
- 용어집을 Google 시트로 내보내는 방법을 알아보세요.
- 메타데이터 관리에 대해 자세히 알아보세요.