이 문서에서는 Data Catalog 메타데이터를 지원하는 비즈니스 용어집 프리뷰 버전에서 Dataplex 범용 카탈로그 메타데이터를 지원하는 비즈니스 용어집 정식 버전으로 이전하는 방법을 설명합니다. 전환 프로세스에서는 Data Catalog에서 용어집, 카테고리, 용어, 링크를 내보낸 다음 Dataplex 범용 카탈로그로 가져와야 합니다.
Dataplex 범용 카탈로그의 비즈니스 용어집으로 전환하려면 다음 단계를 따르세요.
- Data Catalog에서 용어집, 카테고리, 용어를 내보냅니다.
- 용어집, 카테고리, 용어를 Dataplex 범용 카탈로그로 가져옵니다.
- Data Catalog에서 용어 간 링크를 내보냅니다.
- 용어 간 링크를 Dataplex 범용 카탈로그로 가져옵니다.
- Data Catalog에서 용어와 열 간의 링크를 내보냅니다.
- 용어와 열 간의 링크를 Dataplex 범용 카탈로그로 가져옵니다.
필요한 역할
Data Catalog에서 용어를 내보내려면 용어가 있는 프로젝트에 roles/datacatalog.glossaryOwner
역할이 있어야 합니다. 이 역할에 필요한 권한을 참고하세요.
비즈니스 용어를 Dataplex 범용 카탈로그로 가져오는 데 필요한 권한을 얻으려면 관리자에게 프로젝트에 대한 Dataplex 관리자 (roles/dataplex.admin
) IAM 역할을 부여해 달라고 요청하세요.
역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.
이 사전 정의된 역할에는 비즈니스 용어를 Dataplex 유니버설 카탈로그로 가져오는 데 필요한 권한이 포함되어 있습니다. 필요한 정확한 권한을 보려면 필수 권한 섹션을 펼치세요.
필수 권한
비즈니스 용어집을 Dataplex 범용 카탈로그로 가져오려면 다음 권한이 필요합니다.
-
용어집 리소스에 대한
dataplex.glossaries.import
권한 -
dataplex.entryGroups.import
entry_groups
필드에 제공된 Dataplex 범용 카탈로그 항목 그룹과 용어집 용어에 연결된 Data Catalog 항목이 있는 항목 그룹 -
dataplex.entryGroups.useSynonymEntryLink
entry_groups
필드에 제공된 Dataplex 범용 카탈로그 항목 그룹과 용어집 용어에 연결된 Data Catalog 항목이 있는 항목 그룹 -
dataplex.entryGroups.useRelatedEntryLink
entry_groups
필드에 제공된 Dataplex 범용 카탈로그 항목 그룹과 용어집 용어에 연결된 Data Catalog 항목이 있는 항목 그룹 -
referenced_entry_scopes
필드에 제공된 모든 프로젝트에 대한dataplex.entryLinks.reference
권한
커스텀 역할이나 다른 사전 정의된 역할을 사용하여 이 권한을 부여받을 수도 있습니다.
Data Catalog에서 용어집, 카테고리, 용어 내보내기
한 번에 하나의 용어집을 내보낼 수 있습니다.
dataplex-labs 저장소를 클론한 후 디렉터리를
business-glossary-import
하위 디렉터리로 변경합니다.git clone https://github.com/GoogleCloudPlatform/dataplex-labs.git cd dataplex-labs cd dataplex-quickstart-labs/00-resources/scripts/python/business-glossary-import
액세스 토큰을 가져옵니다.
export GCLOUD_ACCESS_TOKEN=$(gcloud auth print-access-token)
내보내기 스크립트를 실행합니다.
python3 bg_import/business_glossary_export_v2.py \ --user-project="PROJECT_ID" \ --url="DATA_CATALOG_GLOSSARY_URL" \ --export-mode=glossary_only
다음을 바꿉니다.
PROJECT_ID
: 용어집이 포함된 프로젝트의 ID입니다.DATA_CATALOG_GLOSSARY_URL
: 콘솔에 있는 Data Catalog 비즈니스 용어집의 URL입니다.
스크립트는 메타데이터 가져오기 작업에 사용되는 메타데이터 가져오기 파일과 동일한 형식을 따르는 JSON 파일을 만듭니다. 용어집, 카테고리, 용어의 이름은 다음 형식을 사용합니다.
- 용어:
projects/PROJECT_NUMBER/locations/LOCATION_ID/entryGroups/@dataplex/entries/projects/PROJECT_NUMBER/locations/LOCATION_ID/glossaries/GLOSSARY_ID
- 기간:
projects/PROJECT_NUMBER/locations/LOCATION_ID/entryGroups/@dataplex/entries/projects/PROJECT_NUMBER/locations/LOCATION_ID/glossaries/GLOSSARY_ID/terms/TERM_ID
- 카테고리:
projects/PROJECT_NUMBER/locations/LOCATION_ID/entryGroups/@dataplex/entries/projects/PROJECT_NUMBER/locations/LOCATION_ID/glossaries/GLOSSARY_ID/categories/CATEGORY_ID
여기서
GLOSSARY_ID
,CATEGORY_ID
,TERM_ID
,PROJECT_NUMBER
,LOCATION_ID
은 Data Catalog 용어집의 값과 동일합니다.
용어집, 카테고리, 용어 가져오기
이전 단계에서 내보낸 Dataplex 범용 카탈로그 용어집, 카테고리, 용어를 가져와야 합니다. 이 섹션에서는 메타데이터 작업 API를 사용하여 가져오는 방법을 설명합니다.
Dataplex 범용 카탈로그 서비스 계정에 Cloud Storage 버킷에 대한 읽기 액세스 권한을 부여합니다.
메타데이터 가져오기 작업을 실행하여 용어를 가져옵니다.
# Set GCURL alias alias gcurl='curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json"' # Import CURL Command gcurl https://dataplex.googleapis.com/v1/projects/PROJECT_NUMBER/locations/global/metadataJobs?metadata_job_id=JOB_ID -d "$(cat<<EOF { "type": "IMPORT", "import_spec": { "log_level": "DEBUG", "source_storage_uri": "gs://STORAGE_BUCKET/", "entry_sync_mode": "FULL", "aspect_sync_mode": "INCREMENTAL", "scope": { "glossaries": ["projects/PROJECT_NUMBER/locations/global/glossaries/GLOSSARY_ID"] } } } EOF )"
다음을 바꿉니다.
JOB_ID
: (선택사항) 메타데이터 가져오기 작업 ID입니다. 이 ID를 사용하여 작업의 상태를 추적할 수 있습니다. ID를 제공하지 않으면 gcurl 명령어가 고유 ID를 생성합니다.STORAGE_BUCKET
: 내보낸 용어집 파일이 포함된 Cloud Storage 버킷 또는 폴더의 URI입니다.PROJECT_NUMBER
: 용어가 포함된 프로젝트 번호입니다.
선택사항: 메타데이터 가져오기 작업의 상태를 추적하려면
metadataJobs.get
메서드를 사용합니다.gcurl -X GET https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/metadataJobs/JOB_ID
메타데이터 가져오기 작업에 오류가 발생하면 로그에 표시됩니다.
Data Catalog에서 용어 간 링크 내보내기
dataplex-labs 저장소를 클론하고 (아직 클론하지 않은 경우) 디렉터리를
business-glossary-import
하위 디렉터리로 변경합니다.git clone https://github.com/GoogleCloudPlatform/dataplex-labs.git cd dataplex-labs cd dataplex-quickstart-labs/00-resources/scripts/python/business-glossary-import
액세스 토큰을 가져옵니다.
export GCLOUD_ACCESS_TOKEN=$(gcloud auth print-access-token)
내보내기 코드를 실행합니다.
python3 bg_import/business_glossary_export_v2.py \ --user-project=PROJECT_ID \ --url="DATA_CATALOG_GLOSSARY_URL" \ --export-mode=entry_links_only \ --entrylinktype="related,synonym"
이 스크립트는 용어 간의 동의어와 관련 링크가 포함된 JSON 파일을 만듭니다. 내보낸 파일은
dataplex-quickstart-labs/00-resources/scripts/python/business-glossary-import
의Exported_Files
폴더에 있습니다. 파일 이름은entrylinks_relatedsynonymGLOSSARY_ID.json
입니다.
용어 간 링크를 Dataplex 범용 카탈로그로 가져오기
이전 단계에서 내보낸 용어 간 링크를 가져와야 합니다. 이 섹션에서는 메타데이터 작업 API를 사용하여 가져오는 방법을 설명합니다.
새 Cloud Storage 버킷을 만든 다음 이전 단계에서 내보낸 항목 링크 파일을 버킷에 업로드합니다.
Dataplex 범용 카탈로그 서비스 계정에 Cloud Storage 버킷에 대한 읽기 액세스 권한을 부여합니다.
메타데이터 가져오기 작업을 실행하여 항목 링크를 가져옵니다.
# Import CURL Command gcurl https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/global/metadataJobs?metadata_job_id=JOB_ID -d "$(cat<<EOF { "type": "IMPORT", "import_spec": { "log_level": "DEBUG", "source_storage_uri": "gs://STORAGE_BUCKET/", "entry_sync_mode": "FULL", "aspect_sync_mode": "INCREMENTAL", "scope": { "entry_groups": ["projects/GLOSSARY_PROJECT_ID/locations/global/entryGroups/@dataplex"], "entry_link_types": ["projects/dataplex-types/locations/global/entryLinkTypes/synonym", "projects/dataplex-types/locations/global/entryLinkTypes/related"], "referenced_entry_scopes": [PROJECT_IDS] } } } EOF )"
다음을 바꿉니다.
GLOSSARY_PROJECT_ID
: 용어집이 포함된 프로젝트의 ID입니다.PROJECT_IDS
: 용어가 서로 다른 프로젝트의 용어집에서 연결된 경우"projects/PROJECT_ID1", "projects/PROJECT_ID2"
형식으로 프로젝트 ID를 제공합니다.
다음에 유의하세요.
entry_groups
객체에는 항목 링크가 생성된 항목 그룹이 포함됩니다. 글로소리와 동일한 프로젝트 및 위치에 있는@dataplex
시스템 항목 그룹입니다.entry_link_types
객체를 사용하면 동의어, 관련 용어 또는 둘 다 가져올 수 있습니다.- 동의어:
projects/dataplex-types/locations/global/entryLinkTypes/synonym
- 관련 용어:
projects/dataplex-types/locations/global/entryLinkTypes/related
- 동의어:
referenced_entry_scopes
객체에는 서로 다른 용어집의 용어를 연결하는 항목 링크의 프로젝트 ID가 포함됩니다.
용어와 열 간의 링크 내보내기
용어집과 용어 간 링크를 내보내고 가져온 후 용어와 열 간 링크를 가져옵니다. 다음 명령어에서 링크 유형은 정의로 설정되어 용어와 열 간의 링크를 내보냅니다.
## Clone the repository and navigate to the directory git clone https://github.com/GoogleCloudPlatform/dataplex-labs.git cd dataplex-labs cd dataplex-quickstart-labs/00-resources/scripts/python/business-glossary-import export GCLOUD_ACCESS_TOKEN=$(gcloud auth print-access-token); ## Run the export code python3 bg_import/business_glossary_export_v2.py \ --user-project="PROJECT_ID" \ --url="DATA_CATALOG_GLOSSARY_URL" \ --export-mode=entry_links_only \ --entrylinktype="definition"
용어와 열 간의 링크 가져오기
이전 단계에서 내보낸 용어와 열 간의 링크를 가져와야 합니다. 이 섹션에서는 메타데이터 작업 API를 사용하여 가져오는 방법을 설명합니다.
이전 단계에서 내보낸 각 파일을 2단계에 설명된 대로 Cloud Storage 버킷에 업로드합니다.
Cloud Storage 버킷에 업로드된 각 파일에 대해 별도의 가져오기 명령어를 실행합니다. 각 파일은 용어와 해당 항목 그룹의 열 간 링크가 포함된 고유한 항목 그룹에 해당합니다.
# Set GCURL alias alias gcurl='curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json"' # Import CURL Command gcurl https://dataplex.googleapis.com/v1/projects/ENTRY_GROUP_PROJECT_ID/locations/ENTRY_GROUP_LOCATION_ID { "type":"IMPORT", "import_spec":{ "log_level":"DEBUG", "source_storage_uri":"gs://STORAGE_BUCKET/", "entry_sync_mode":"FULL", "aspect_sync_mode":"INCREMENTAL", "scope":{ "entry_groups":[ "projects/ENTRY_GROUP_PROJECT_ID/locations/ENTRY_GROUP_LOCATION_ID/entryGroups/ENTRY_GROUP_ID" ], "entry_link_types":[ "projects/dataplex-types/locations/global/entryLinkTypes/definition", ], "referenced_entry_scopes":[ PROJECT_IDS ] } } } EOF )"