Integrasi Knowledge Catalog
Dokumen ini menjelaskan cara Cortex Framework terintegrasi dengan Knowledge Catalog, yang bertindak sebagai lapisan tata kelola untuk produk data perusahaan di seluruh organisasi Anda. Dokumen ini juga menjelaskan cara alat sinkronisasi Knowledge Catalog Google Cloud Cortex Framework membantu mendaftarkan dan menyinkronkan produk data Google Cloud Cortex Framework dengan Knowledge Catalog, sehingga menyederhanakan penemuan dan berbagi yang aman.
Dengan mengaktifkan integrasi ini, produk data Cortex Framework yang di-deploy, termasuk deskripsi bisnis yang diperkaya, metadata kepemilikan, dan set data serta tabel BigQuery fisik yang mendasarinya, akan otomatis dikatalogkan dan dapat ditemukan di Knowledge Catalog.
Manfaat utama
Mengintegrasikan Cortex Framework dengan Knowledge Catalog memberikan manfaat utama berikut:
- Kemampuan penemuan data otomatis: Pengguna dapat menjelajahi dan menelusuri produk data perusahaan standar langsung dalam antarmuka pengguna Knowledge Catalog tanpa memerlukan entri katalog manual.
- Konteks bisnis yang diperkaya: Mengimpor nama tampilan, deskripsi bisnis mendetail, dan URL dokumentasi secara otomatis langsung dari file
manifest.yamlke Knowledge Catalog. - Penautan aset terpadu: Menghubungkan setiap tabel dasar pelaporan yang sesuai langsung ke produk data Knowledge Catalog yang sesuai. Hal ini memberikan visibilitas langsung kepada konsumen data tentang objek data fisik yang mendukung domain bisnis tertentu.
- Rekonsiliasi siklus proses dan penyimpangan otomatis: Saat model data perusahaan Anda berkembang, menjalankan alat sinkronisasi akan otomatis merekonsiliasi metadata dan link aset. Alat ini mendaftarkan tabel baru, memperbarui definisi yang diubah, dan menghapus link yang tidak digunakan lagi sekaligus melindungi item katalog yang tidak dikelola dan dibuat pengguna.
- Keamanan pengelolaan sistem: Menggunakan label sistem khusus (
cortex-framework-createddancortex-framework-version) untuk mengidentifikasi dan mengelola hanya resource yang dibuat oleh Cortex Framework, sehingga mencegah penimpaan aset Knowledge Catalog yang dikelola pelanggan secara tidak sengaja.
Cara integrasi berfungsi
Integrasi Knowledge Catalog didukung oleh alat sinkronisasi cortex-kc-sync (tools.dataplex.kc_sync). Saat dijalankan, alat sinkronisasi akan melakukan alur kerja multi-langkah berikut:
1. Konfigurasi dan ekstraksi manifes
Alat sinkronisasi mengurai file konfigurasi config/config.yaml global Anda untuk mengidentifikasi semua modul produk data yang diaktifkan (data.modules.products) dan set data BigQuery targetnya (data.targets).
Untuk setiap modul yang diaktifkan, alat sinkronisasi mengekstrak metadata deskriptif dari manifest.yaml modul (menggunakan penyedia modul ruang kerja):
displayName: Judul produk data yang dapat dibaca manusia.description: Ringkasan bisnis modul.documentation: URL yang mengarah ke dokumentasi modul internal atau eksternal.
2. Penemuan aset BigQuery
Daripada memverifikasi daftar statis definisi tabel, cortex-kc-sync membuat kueri BigQuery (list_dataset_tables) untuk menemukan secara dinamis tabel dan tampilan mana yang sudah di-deploy di set data target Anda.
Alat ini menyelesaikan dan memfilter tabel dengan mencari label pelacakan tertentu yang diterapkan selama deployment:
cortex-framework-namespaced-module-typeyang cocok dengan jalur modul yang sepenuhnya memenuhi syarat (misalnya,cortex.sap.products.sales_performance), ataucortex-framework-module-typeyang cocok dengan nama jenis modul kanonis (misalnya,sales_performance).
Hanya tabel dan tampilan yang terwujud yang memiliki label ini di BigQuery yang akan dikatalogkan dan ditautkan sebagai aset di bawah produk data.
3. Rekonsiliasi dan pelabelan resource terkelola
Alat sinkronisasi berkomunikasi dengan dataplex_v1 API (DataProductClient) untuk merekonsiliasi setiap produk data yang ditemukan di target Google Cloud location:
Pembuatan (
NEEDS_CREATION): Jika produk data tidak ada, alat sinkronisasi akan membuat produk data Knowledge Catalog baru yang diisi dengan metadata manifes yang diekstrak dan menautkan aset BigQuery yang diselesaikan. Alat ini menandai resource dengan dua label sistem:cortex-framework-created: ditetapkan ke"true"cortex-framework-version: ditetapkan ke"7-0-0"
Perlindungan resource yang tidak dikelola (
NOT_MANAGED): Jika produk data Knowledge Catalog dengan ID yang sama sudah ada di katalog, tetapi tidak memiliki label sistem ini (is_managed_data_product == False), alat sinkronisasi akan melewatinya untuk melindungi aset katalog yang dibuat pengguna atau yang sudah ada.Pembaruan (
NEEDS_UPDATE): Jika produk data terkelola ada dan memiliki perubahan dalam metadata atau komposisi tabelnya, alat sinkronisasi akan memperbarui definisi produk data Knowledge Catalog dan merekonsiliasi aset BigQuery yang ditautkan (BigQueryAssetLinks). Alat ini otomatis membuat linkDataAssetbaru untuk tabel yang baru ditambahkan dan menghapus link yang tidak digunakan lagi, sekaligus mempertahankan link yang tidak berubah.
Penyiapan dan konfigurasi
Bagian ini menjelaskan prasyarat, konfigurasi metadata, dan langkah-langkah eksekusi yang diperlukan untuk menyiapkan dan menjalankan sinkronisasi antara Cortex Framework dan Knowledge Catalog.
Prasyarat
Sebelum menjalankan sinkronisasi Knowledge Catalog, pastikan Anda telah memenuhi persyaratan berikut:
Mengaktifkan Google Cloud layanan
Di bagian ini, kita akan mengaktifkanlayanan berikut di Google Cloud project Anda: Google Cloud
- Cloud Dataplex API (
dataplex.googleapis.com)
Aktifkanlayanan Google Cloud ini menggunakan Cloud Shell dengan menjalankan perintah berikut di terminal Anda:
gcloud config set project PROJECT_ID
gcloud services enable dataplex.googleapis.com \
--project=PROJECT_ID
Peran untuk project target
Untuk mendapatkan izin yang Anda perlukan untuk menyinkronkan Knowledge Catalog, minta administrator Anda untuk memberi Anda peran IAM berikut di project target Anda:
- Editor Dataplex (
roles/dataplex.editor) - Editor Produk Data Dataplex (
roles/dataplex.dataProductsEditor) - Pemilik Entri Dataplex (
roles/dataplex.entryOwner) - BigQuery Metadata Viewer (
roles/bigquery.metadataViewer) - BigQuery Data Viewer (
roles/bigquery.dataViewer)
Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.
Peran bawaan ini berisi izin
dataplex.dataProducts.create, dataplex.dataProducts.update, dataplex.dataAssets.create, dataplex.dataAssets.delete
,
yang diperlukan untuk
menyinkronkan Knowledge Catalog.
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Untuk memberikan peran yang diminta kepada pengguna, Anda dapat menggunakan skrip:
gcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_EMAIL" \
--role="roles/dataplex.editor"
gcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_EMAIL" \
--role="roles/dataplex.dataProductsEditor"
gcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_EMAIL" \
--role="roles/dataplex.entryOwner"
gcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_EMAIL" \
--role="roles/bigquery.metadataViewer"
gcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_EMAIL" \
--role="roles/bigquery.dataViewer"
Pipeline Dataform yang dieksekusi
Anda harus menjalankan cortex-build-and-deploy atau cortex-deploy terlebih dahulu seperti yang dijelaskan dalam Panduan deployment dan menjalankan tindakan pipeline Dataform untuk mewujudkan tabel dan tampilan BigQuery sebelum mencoba menyinkronkan dengan Knowledge Catalog. Untuk mengetahui petunjuk langkah demi langkah tentang cara menjalankan transformasi, lihat Langkah-langkah pasca-deployment.
Mengonfigurasi metadata produk data
Anda dapat menyesuaikan metadata bisnis yang ditampilkan di Knowledge Catalog dengan mengubah file manifest.yaml yang terletak di dalam setiap direktori modul produk data (misalnya, src/data_modules/cortex/sap/products/accounts_payable/manifest.yaml).
Contoh berikut menunjukkan cara menentukan displayName, description, dan documentation dalam manifes modul:
displayName: "SAP Accounts Payable"
description: >
SAP Data Product for Accounts Payable containing conformed vendor invoices,
payment aging schedules, and financial accounting documents.
documentation: "https://docs.cloud.google.com/cortex/docs/data-product"
category: foundational_product
type: accounts_payable
dependencies:
sapModule:
supportedVersions:
- ecc
- s4
tables:
ecc:
- bsik
- bsak
s4:
- acdoca
- bseg
common:
- bkpf
modulePath: cortex.sap.foundations.sap
builder: sap_product
Menjalankan perintah sinkronisasi
Setelah produk data Anda di-deploy dan diwujudkan di BigQuery, jalankan alat CLI cortex-kc-sync menggunakan uv:
uv run cortex-kc-sync --config config/config.yaml --owner-email USER_EMAIL
Untuk mengetahui daftar lengkap flag dan argumen yang tersedia, lihat referensi CLI KC sync (uv run cortex-kc-sync).
Verifikasi sinkronisasi Knowledge Catalog
Untuk memverifikasi keberhasilan sinkronisasi antara aset Google Cloud Cortex Framework dan Knowledge Catalog, ikuti langkah-langkah berikut:
- Di Google Cloud konsol, buka Knowledge Catalog
- Opsional: Di dialog penelusuran, Anda dapat menggunakan salah satu filter cepat seperti
Data ProductsatauTables. - Di kolom penelusuran layar utama Knowledge Catalog, klik
Filters. - Di tampilan
Filtersyang terbuka, pilih dari menu drop-downProjectproject yang Anda gunakan untuk menyinkronkan produk data Google Cloud Cortex Framework. - Setelah sinkronisasi berhasil, Anda kini dapat memilih atau menelusuri aset data yang diekspos oleh Google Cloud Cortex Framework, termasuk semua metadata yang dipublikasikan.
Mengotomatiskan alur kerja
Di lingkungan produksi, sebaiknya jalankan cortex-kc-sync secara otomatis sebagai langkah pasca-pemrosesan di dalam pipeline orkestrasi CI/CD atau DAG Knowledge Catalog (Airflow) segera setelah eksekusi pipeline Dataform berhasil:
- Membuat dan men-deploy: Jalankan
cortex-deploy(uv run cortex-deploy --config config/config.yaml) untuk mengompilasi dan menyiapkan konfigurasi ke Dataform. - Menjalankan transformasi: Memicu eksekusi Dataform untuk mewujudkan lapisan dasar data dan tabel pelaporan yang sesuai di BigQuery.
- Sinkronisasi katalog: Jalankan
cortex-kc-sync(uv run cortex-kc-sync --config config/config.yaml) untuk memverifikasi pembuatan tabel dan menyinkronkan semua produk data, deskripsi, dan link asal data yang diperbarui langsung ke Knowledge Catalog.
Langkah berikutnya
- Membuat produk data kustom: Lihat Panduan ekstensibilitas: Pembuatan modul produk data untuk membuat produk data baru atau memperluas skema.