Melakukan transisi secara manual ke glosarium bisnis di Dataplex Universal Catalog

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:

  1. Mengekspor glosarium dan link entri dari Katalog Data.
  2. Mengimpor glosarium, kategori, dan istilah ke Dataplex Universal Catalog.
  3. Impor link antar-istilah ke Dataplex Universal Catalog.
  4. 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.import pada resource glosarium
  • dataplex.entryGroups.import di grup entri Dataplex Universal Catalog yang disediakan di kolom entry_groups dan di grup entri tempat entri Data Catalog berada yang ditautkan ke istilah glosarium
  • dataplex.entryGroups.useSynonymEntryLink di grup entri Dataplex Universal Catalog yang disediakan di kolom entry_groups dan di grup entri tempat entri Data Catalog berada yang ditautkan ke istilah glosarium
  • dataplex.entryGroups.useRelatedEntryLink di grup entri Dataplex Universal Catalog yang disediakan di kolomentry_groups dan di grup entri tempat entri Data Catalog berada yang ditautkan ke istilah glosarium
  • dataplex.entryLinks.reference di semua project yang disediakan di kolom referenced_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.

  1. 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-import
    
  2. Dapatkan token akses Anda:

    export GCLOUD_ACCESS_TOKEN=$(gcloud auth print-access-token)
    
  3. 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, dan LOCATION_ID sama 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_Files di dataplex-quickstart-labs/00-resources/scripts/python/business-glossary-import. Nama filenya adalah glossary_GLOSSARY_ID.json.

  • Perintah ekspor akan otomatis membuat glosarium di Dataplex Universal Catalog dengan GLOSSARY_ID dan PROJECT_ID yang 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 adalah entrylinks_related_synonym_GLOSSARY_ID.json.

  • Link yang diekspor ada di folder Exported_Files di dataplex-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.

  1. Buat bucket Cloud Storage, lalu upload file ke bucket.

  2. Beri akun layanan Dataplex Universal Catalog akses baca ke bucket Cloud Storage.

  3. 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.
  4. 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.

  1. Buat bucket Cloud Storage baru, lalu upload file link entri yang diekspor dari langkah sebelumnya ke dalam bucket.

  2. Beri akun layanan Dataplex Universal Catalog akses baca ke bucket Cloud Storage.

  3. 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_groups berisi grup entri tempat link entri dibuat. Ini adalah grup entri sistem @dataplex dalam project dan lokasi yang sama dengan glosarium.
    • Objek entry_link_types memungkinkan Anda mengimpor sinonim, istilah terkait, atau keduanya:

      • Sinonim: projects/dataplex-types/locations/global/entryLinkTypes/synonym
      • Istilah terkait: projects/dataplex-types/locations/global/entryLinkTypes/related
    • Objek referenced_entry_scopes mencakup 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.

  1. Upload setiap file yang diekspor pada langkah sebelumnya ke bucket Cloud Storage.

  2. 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
)"

Langkah berikutnya