Dokumen ini memberikan petunjuk untuk bermigrasi dari glosarium bisnis versi pratinjau, yang mendukung metadata Data Catalog, ke glosarium bisnis versi yang tersedia secara umum, yang mendukung metadata Dataplex Universal Catalog. Proses transisi mencakup mengekspor glosarium, kategori, istilah, dan link dari Data Catalog, lalu mengimpornya ke Dataplex Universal Catalog.
Untuk bertransisi ke glosarium bisnis di Dataplex Universal Catalog secara manual, ikuti langkah-langkah berikut:
- Mengekspor glosarium dan link entri dari Katalog Data.
- Mengimpor glosarium, kategori, dan istilah ke Dataplex Universal Catalog.
- Impor link antar-istilah ke Dataplex Universal Catalog.
- Impor link antara istilah dan kolom ke Dataplex Universal Catalog.
Sebelum memulai
Untuk mengaktifkan ekspor dari glosarium di Data Catalog, daftar menggunakan formulir ini.
Instal gcloud atau paket python.
Peran yang diperlukan
Untuk mengekspor glosarium dari Data Catalog, Anda harus memiliki peran
roles/datacatalog.glossaryOwner pada project tempat glosarium berada. Lihat izin yang diperlukan untuk peran ini.
Guna mendapatkan izin yang
diperlukan untuk mengimpor glosarium bisnis ke Dataplex Universal Catalog,
minta administrator Anda untuk memberi Anda peran IAM
Dataplex Administrator (roles/dataplex.admin)
di project.
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.
Peran bawaan ini berisi izin yang diperlukan untuk mengimpor glosarium bisnis ke Katalog Universal Dataplex. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:
Izin yang diperlukan
Izin berikut diperlukan untuk mengimpor glosarium bisnis ke Dataplex Universal Catalog:
-
dataplex.glossaries.importpada resource glosarium -
dataplex.entryGroups.importdi grup entri Dataplex Universal Catalog yang disediakan di kolomentry_groupsdan di grup entri tempat entri Data Catalog berada yang ditautkan ke istilah glosarium -
dataplex.entryGroups.useSynonymEntryLinkdi grup entri Dataplex Universal Catalog yang disediakan di kolomentry_groupsdan di grup entri tempat entri Data Catalog berada yang ditautkan ke istilah glosarium -
dataplex.entryGroups.useRelatedEntryLinkdi grup entri Dataplex Universal Catalog yang disediakan di kolomentry_groupsdan di grup entri tempat entri Data Catalog berada yang ditautkan ke istilah glosarium -
dataplex.entryLinks.referencedi semua project yang disediakan di kolomreferenced_entry_scopes
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Mengekspor glosarium, kategori, dan istilah dari Katalog Data
Anda dapat mengekspor satu glosarium dalam satu waktu.
Clone repositori dataplex-labs, lalu ubah direktori ke subdirektori
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-importDapatkan token akses Anda:
export GCLOUD_ACCESS_TOKEN=$(gcloud auth print-access-token)Jalankan skrip ekspor:
python3 bg_import/business_glossary_export_v2.py \ --user-project="PROJECT_ID" \ --url="DATA_CATALOG_GLOSSARY_URL"
Ganti kode berikut:
PROJECT_ID: ID project yang berisi glosarium.DATA_CATALOG_GLOSSARY_URL: URL glosarium bisnis Data Catalog di konsol Google Cloud .
Skrip ini membuat file JSON yang mengikuti format yang sama dengan file impor metadata yang digunakan untuk tugas impor metadata. Nama glosarium, kategori, dan istilah menggunakan format berikut:
- Glosarium:
projects/PROJECT_ID/locations/LOCATION_ID/entryGroups/@dataplex/entries/projects/{PROJECT_ID{"</var>"}}/locations/LOCATION_ID/glossaries/GLOSSARY_ID - Jangka Waktu:
projects/PROJECT_ID/locations/LOCATION_ID/entryGroups/@dataplex/entries/projects/PROJECT_ID/locations/LOCATION_ID/glossaries/GLOSSARY_ID/terms/TERM_ID - Kategori:
projects/PROJECT_ID/locations/LOCATION_ID/entryGroups/@dataplex/entries/projects/PROJECT_ID/locations/LOCATION_ID/glossaries/GLOSSARY_ID/categories/CATEGORY_ID
GLOSSARY_ID,CATEGORY_ID,TERM_ID,PROJECT_ID, danLOCATION_IDsama dengan nilai dari glosarium Data Catalog.
Hasil
Daftar berikut menjelaskan hal-hal yang perlu diperhatikan tentang hasilnya:
Glosarium serta kategori dan istilahnya diekspor di lokasi global, sehingga istilah dapat ditautkan ke entri di wilayah mana pun.
File yang diekspor berada di folder
Exported_Filesdidataplex-quickstart-labs/00-resources/scripts/python/business-glossary-import. Nama filenya adalahglossary_GLOSSARY_ID.json.Perintah ekspor akan otomatis membuat glosarium di Dataplex Universal Catalog dengan GLOSSARY_ID dan
PROJECT_IDyang sama di lokasi global.Skrip ini membuat file JSON yang berisi sinonim dan link terkait antar-istilah. File yang diekspor berada di folder Exported_Files di
dataplex-quickstart-labs/00-resources/scripts/python/business-glossary-import. Nama filenya adalahentrylinks_related_synonym_GLOSSARY_ID.json.Link yang diekspor ada di folder
Exported_Filesdidataplex-quickstart-labs/00-resources/scripts/python/business-glossary-import.Istilah dalam glosarium dapat ditautkan ke banyak entri dalam banyak grup entri. Mengekspor link antara istilah dan kolom akan membuat file untuk setiap
entryGroup. Format nama filenya adalah:entrylinks_definition_export_GLOSSARY_ID_ENTRY_PROJECT_ID_ENTRY_LOCATION_ID_ENTRY_GROUP_ID.json.ID glosarium yang Anda perlukan untuk mengimpor glosarium, kategori, dan istilah muncul setelah skrip ekspor berjalan.
Mengimpor glosarium, kategori, dan istilah
Anda perlu mengimpor glosarium, kategori, dan istilah Dataplex Universal Catalog yang diekspor pada langkah sebelumnya. Bagian ini menjelaskan cara mengimpor menggunakan Metadata Job API.
Beri akun layanan Dataplex Universal Catalog akses baca ke bucket Cloud Storage.
Jalankan tugas impor metadata untuk mengimpor glosarium.
# 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_ID/locations/global/metadataJobs\?metadata_job_id=JOB_ID" -X POST -H "Content-Type: application/json" -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_ID/locations/global/glossaries/GLOSSARY_ID"] } } } EOF )"
Ganti kode berikut:
JOB_ID: (opsional) ID tugas impor metadata, yang dapat Anda gunakan untuk melacak status tugas. Jika Anda tidak memberikan ID, perintah gcurl akan menghasilkan ID unik.STORAGE_BUCKET: URI bucket atau folder Cloud Storage yang berisi file glosarium yang diekspor.PROJECT_ID: nomor project yang berisi glosarium.
Opsional: Untuk melacak status tugas impor metadata, gunakan metode
metadataJobs.get:gcurl -X GET https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/global/metadataJobs/JOB_ID
Jika Anda mendapatkan error dalam tugas impor metadata, error tersebut akan muncul di log.
Mengimpor link antar-istilah ke Dataplex Universal Catalog
Anda perlu mengimpor link antar-istilah yang diekspor pada langkah sebelumnya. Bagian ini menjelaskan cara mengimpor menggunakan Metadata Job API.
Buat bucket Cloud Storage baru, lalu upload file link entri yang diekspor dari langkah sebelumnya ke dalam bucket.
Beri akun layanan Dataplex Universal Catalog akses baca ke bucket Cloud Storage.
Jalankan tugas impor metadata untuk mengimpor link entri:
# Import CURL Command gcurl "https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/global/metadataJobs?metadata_job_id=JOB_ID" -X POST -H "Content-Type: application/json" -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": ["projects/GLOSSARY_PROJECT_ID","projects/LINKED_GLOSSARY_PROJECT_ID_1","projects/LINKED_GLOSSARY_PROJECT_ID_2"] } } } EOF )"
Ganti kode berikut:
GLOSSARY_PROJECT_ID: ID project yang berisi glosarium- Opsional:
LINKED_GLOSSARY_PROJECT_ID_1: jika istilah ditautkan di seluruh glosarium dalam project yang berbeda, berikan ID project - Opsional:
LINKED_GLOSSARY_PROJECT_ID_2: jika istilah ditautkan di seluruh glosarium dalam project yang berbeda, berikan ID project
Perhatikan hal berikut:
- Objek
entry_groupsberisi grup entri tempat link entri dibuat. Ini adalah grup entri sistem@dataplexdalam project dan lokasi yang sama dengan glosarium. Objek
entry_link_typesmemungkinkan Anda mengimpor sinonim, istilah terkait, atau keduanya:- Sinonim:
projects/dataplex-types/locations/global/entryLinkTypes/synonym - Istilah terkait:
projects/dataplex-types/locations/global/entryLinkTypes/related
- Sinonim:
Objek
referenced_entry_scopesmencakup project ID link entri yang menautkan istilah dari glosarium yang berbeda.
Mengimpor link antara istilah dan kolom
Anda perlu mengimpor link antara istilah dan kolom yang diekspor pada langkah sebelumnya. Bagian ini menjelaskan cara mengimpor menggunakan Metadata Job API.
Upload setiap file yang diekspor pada langkah sebelumnya ke bucket Cloud Storage.
Jalankan perintah impor terpisah untuk setiap file yang diupload di bucket Cloud Storage. Setiap file sesuai dengan grup entri unik yang berisi link antara istilah dan kolom grup entri tersebut.
gcurl "https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/ENTRY_GROUP_LOCATION_ID/metadataJobs?metadata_job_id=JOB_ID" -X POST -H "Content-Type: application/json" -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/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": ["projects/ENTRY_GROUP_PROJECT_ID", "projects/GLOSSARY_PROJECT_ID"] } } } EOF )"