Hilangkan data silo dan hindari beralih antar-alat dengan menggunakan konektor Knowledge Catalog (sebelumnya Dataplex Universal Catalog) untuk mengimpor metadata dari Databricks Unity Catalog langsung ke Google Cloud.
Konektor ini mendukung instance Databricks Unity Catalog yang dihosting di Google Cloud, Microsoft Azure, atau Amazon Web Services (AWS).
Tabel berikut mencantumkan metadata yang diambil oleh konektor Databricks Unity Catalog:
| Kategori | Metadata yang diambil |
|---|---|
| Teknis |
|
| Operasional |
|
| Bisnis |
|
| Semantik |
|
Batasan
Konektor Databricks Unity Catalog memiliki batasan berikut:
- Silsilah tidak didukung.
- Tag semantik dan glosarium bisnis tidak didukung dalam integrasi (Genie API).
- Konektor mengimpor metadata untuk tabel Iceberg Anda, tetapi tidak otomatis menautkan entri yang diimpor ke entri Google Cloud Lakehouse Databricks Unity Catalog Iceberg REST Catalog (IRC) yang sesuai.
Sebelum memulai
Sebelum Anda dapat mengimpor metadata dari Databricks Unity Catalog, selesaikan tugas-tugas berikut:
- Berikan peran dan izin yang diperlukan.
- Aktifkan Dataplex API dan BigQuery Data Transfer Service API.
- Penuhi prasyarat Databricks Unity Catalog.
- Memenuhi prasyarat jaringan.
Peran dan izin IAM
Untuk membuat dan mengelola tugas konektor Knowledge Catalog, Anda memerlukan peran Identity and Access Management (IAM) yang memberikan izin untuk Knowledge Catalog dan BigQuery Data Transfer Service.
Untuk mendapatkan izin yang diperlukan guna mengonfigurasi konektor Databricks Unity Catalog, minta administrator untuk memberi Anda peran IAM berikut:
- Untuk membuat dan mengelola grup entri:
Dataplex Catalog Admin
(
roles/dataplex.catalogAdmin), Dataplex Catalog Editor (roles/dataplex.catalogEditor), atau Dataplex Entry Group Owner (roles/dataplex.entryGroupOwner) di project. - Untuk melihat metadata Databricks Unity Catalog:
Dataplex Catalog Viewer
(
roles/dataplex.catalogViewer) di project. - Untuk membuat dan mengelola tugas transfer BigQuery Data Transfer Service:
BigQuery Admin
(
roles/bigquery.admin) di project. - Untuk melihat log di Cloud Logging:
Logs Viewer
(
roles/logging.viewer) di project.
Anda juga harus memberikan kedua peran berikut kepada agen layanan BigQuery Data Transfer Service (service-PROJECT_NUMBER@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com):
- Dataplex Entry Group Importer
(
roles/dataplex.entryGroupImporter), di grup entri tujuan atau di project yang memuatnya. Peran ini memungkinkan agen layanan mengimpor metadata ke dalam grup entri (dataplex.entryGroups.import). Dataplex Entry and EntryLink Owner (
roles/dataplex.entryOwner), di project yang berisi grup entri tujuan. Peran ini memungkinkan agen layanan mengimpor metadata penggunaan, bisnis, dan kualitas data serta link entri. Peran ini mencakup izin berikut:dataplex.entryGroups.useDataProfileAspectdataplex.entryGroups.useDataQualityScorecardAspectdataplex.entryGroups.useManagedConnectorTypesdataplex.entryGroups.useReferenceEntryLinkdataplex.entryGroups.useSchemaAspectdataplex.entryGroups.useSchemaJoinAspectdataplex.entryGroups.useSchemaJoinEntryLinkdataplex.entryGroups.useUsageAspectdataplex.entryLinks.reference
Berikan peran ini pada project, bukan hanya pada grup entri, karena impor memeriksa izin
dataplex.entryLinks.referencepada project. Jika agen layanan tidak memiliki izin ini pada project, proses transfer akan gagal dengan error sepertiPermission 'dataplex.entryLinks.reference' denied, dan tidak ada metadata yang diimpor.
Alih-alih memberikan kedua peran ini, Anda dapat memberikan peran
Dataplex Entry Group Owner
(roles/dataplex.entryGroupOwner) pada project yang berisi
grup entri tujuan. Peran ini mencakup izin kedua peran, dan juga memungkinkan agen layanan membuat, menghapus, dan mengelola akses ke semua grup entri dalam project.
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses.
Mengaktifkan API
Aktifkan Dataplex API dan BigQuery Data Transfer Service API.
Prasyarat Databricks Unity Catalog
Akun utama layanan yang digunakan untuk konektor Databricks Unity Catalog harus memiliki izin berikut di Databricks Unity Catalog:
- Izin
Can usedi Databricks SQL warehouse yang digunakan oleh konektor. - Hak istimewa
BROWSEpada katalog target, atauUSE CATALOG,USE SCHEMA, danSELECTpada katalog, skema, dan tabel atau tampilan target. USE CATALOGdi katalogsystem, ditambahUSE SCHEMAdanSELECTdi skema sistem berikut:system.information_schema: diperlukan untuk membaca katalog, skema, tabel, kolom, volume, rutinitas, batasan, dan tag.system.accessdansystem.query: opsional, diperlukan untuk mengimpor metrik penggunaan, insight penggunaan, dan gabungan histori kueri.system.data_quality_monitoring: opsional, diperlukan untuk mengimpor hasil deteksi anomali.
- Opsional:
USE CATALOG,USE SCHEMA, danSELECTpada tabel output Lakehouse Monitoring (TABLE_NAME_profile_metricsdanTABLE_NAME_drift_metrics) untuk mengimpor metrik pembuatan profil dan penyimpangan data.
Jika Anda juga ingin menjalankan kueri SQL atau tugas Spark terhadap katalog Databricks jarak jauh, lihat Menyiapkan koneksi lintas cloud untuk Databricks Unity Catalog.
Prasyarat jaringan
Agar BigQuery Data Transfer Service dapat terhubung dengan aman ke database eksternal atau sumber data cloud pihak ketiga dengan alamat IP pribadi di dalam jaringan pribadi, konfigurasikan lampiran jaringan melalui Private Service Connect.
Jika Anda terhubung ke lingkungan lokal atau instance yang dihosting di cloud menggunakan alamat IP publik, lampiran jaringan tidak diperlukan.
Mengonfigurasi konektor Databricks Unity Catalog
Konfigurasikan konektor Databricks Unity Catalog menggunakan konsol Google Cloud atau REST API.
Konsol
Di konsol Google Cloud , buka halaman Knowledge Catalog.
Di menu navigasi, di bagian Manage, klik Connectors, lalu klik Add connection.
Dalam daftar Connectors, pilih kartu Databricks Unity Catalog.
Di bagian Data source details, berikan detail koneksi untuk instance Databricks Unity Catalog Anda:
- Untuk Network attachment, pilih lampiran jaringan yang ada jika diperlukan, atau buat lampiran jaringan baru.
- Masukkan Workspace Host, SQL Warehouse HTTP Path, Client Id, dan Rahasia Klien.
Untuk Databricks objects to transfer, klik Browse guna memilih metastore, katalog, skema, atau objek individual (tabel, tampilan, volume, fungsi, dan prosedur) yang akan diimpor ke Knowledge Catalog. Memilih metastore, katalog, atau skema akan mengimpor semua objek di dalamnya.
Anda juga dapat memasukkan objek secara manual dalam format
TYPE:METASTORE[/CATALOG[/SCHEMA[/OBJECT]]], denganTYPEadalahMETASTORE,CATALOG,SCHEMA,TABLE,VIEW,VOLUME,FUNCTION, atauPROCEDURE(misalnya,SCHEMA:my_metastore/main/sales). Pola nama tidak didukung.
Di bagian Destination settings:
- Klik Browse dan pilih grup entri Knowledge Catalog yang ada untuk menyimpan metadata yang diimpor, atau klik Create new entry group.
- Pilih apakah akan menetapkan izin pada grup entri sekarang atau nanti.
Agar pengguna dapat melihat metadata yang diimpor, tetapkan izin pada grup entri. Jika Anda tidak memberikan peran Dataplex Entry Group Importer (
roles/dataplex.entryGroupImporter) atau izindataplex.entryGroups.importkepada agen layanan BigQuery Data Transfer Service di level project, berikan peran tersebut pada grup entri ini. Anda tetap harus memberikan peran Dataplex Entry and EntryLink Owner (roles/dataplex.entryOwner) pada project karena izindataplex.entryLinks.referencediperiksa di level project. Untuk mengetahui informasi selengkapnya, lihat Peran dan izin IAM.
Di bagian Transfer config name, untuk Nama tampilan, masukkan nama untuk tugas impor metadata.
Di bagian Schedule options, konfigurasikan frekuensi untuk tugas impor metadata. Jika Anda memilih On-demand, tugas hanya akan berjalan saat Anda memicunya secara manual.
Opsional: Di bagian Notification options, konfigurasikan notifikasi email atau Pub/Sub untuk kegagalan tugas.
Opsional: Di bagian Advanced options, konfigurasikan setelan enkripsi. Jika Anda memilih kunci enkripsi yang dikelola pelanggan (CMEK), kunci tersebut akan mengenkripsi semua data sementara yang di-stage sebelum memulai tugas impor metadata Knowledge Catalog. Kunci tidak mengenkripsi metadata di grup entri Knowledge Catalog tujuan.
Klik Simpan.
REST
Gunakan
metode
projects.locations.transferConfigs.create. Di resource
TransferConfig,
konfigurasi kolom berikut:
- Tetapkan kolom
dataSourceIdke"databricks_unity". - Di kolom
metadataDestination, isi kolomdataplexConfiguration.entryGroupdengan jalur resource grup entri Knowledge Catalog target:projects/PROJECT_ID/locations/LOCATION/entryGroups/ENTRY_GROUP_ID. - Di kolom
params, tetapkan parameter berikut:connector.host(wajib): nama host ruang kerja Databricks (misalnya,dbc-a1b2345c-d6e7.cloud.databricks.com).connector.httpPath(wajib): jalur HTTP dari Databricks SQL warehouse (misalnya,/sql/1.0/warehouses/a1b2345c67890def).connector.authentication.oauth.clientId(wajib): client ID OAuth Databricks.connector.authentication.oauth.clientSecret(wajib): rahasia klien OAuth Databricks.connector.networkAttachment(opsional): lampiran jaringan dalam formatprojects/PROJECT_ID/regions/REGION/networkAttachments/NETWORK_ATTACHMENT_ID.assets(wajib): daftar objek Databricks Unity Catalog yang akan diimpor dalam formatTYPE:METASTORE[/CATALOG[/SCHEMA[/OBJECT]]], seperti["SCHEMA:my_metastore/main/sales"].
- Opsional: Untuk menyimpan kredensial OAuth di luar konfigurasi transfer, simpan kredensial tersebut di Secret Manager:
- Tetapkan
connector.authentication.oauth.clientSecret(danconnector.authentication.oauth.clientId, jika Anda mau) ke nama resource versi secret dalam formatprojects/SECRET_PROJECT_ID/secrets/SECRET_ID/versions/VERSION_ID, dan tambahkan nama parameter tersebut ke kolomparamConfig.secretManagerManagedParams. - Berikan peran
Secret Manager Secret Accessor
(
roles/secretmanager.secretAccessor) pada setiap secret kepada agen layanan BigQuery Data Transfer Service dari project yang berisi konfigurasi transfer (service-PROJECT_NUMBER@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com). Secret dapat berada di project yang berbeda. Jika agen layanan tidak dapat membaca secret, operasi akan gagal sebelum dimulai dengan error sepertiFailed to retrieve secret ... Permission 'secretmanager.versions.access' denied. BigQuery Data Transfer Service membaca secret di awal setiap operasi, jadi jika Anda menetapkanVERSION_IDkelatest, secret yang dirotasi akan digunakan mulai dari operasi berikutnya.
- Tetapkan
Contoh berikut menunjukkan isi permintaan TransferConfig:
{
"displayName": "databricks-unity-metadata-import",
"dataSourceId": "databricks_unity",
"schedule": "every 24 hours",
"params": {
"connector.host": "dbc-a1b2345c-d6e7.cloud.databricks.com",
"connector.httpPath": "/sql/1.0/warehouses/a1b2345c67890def",
"connector.authentication.oauth.clientId": "CLIENT_ID",
"connector.authentication.oauth.clientSecret": "CLIENT_SECRET",
"assets": [
"SCHEMA:my_metastore/main/sales"
]
},
"metadataDestination": {
"dataplexConfiguration": {
"entryGroup": "projects/PROJECT_ID/locations/LOCATION/entryGroups/ENTRY_GROUP_ID"
}
}
}
Tugas berjalan secara otomatis berdasarkan jadwal Anda, atau Anda dapat memicunya secara manual.
Memantau tugas konektor Databricks Unity Catalog
Pantau tugas konektor Databricks Unity Catalog menggunakan konsolGoogle Cloud atau REST API.
Konsol
- Di konsol Google Cloud , di halaman Konektor, klik nama tampilan tugas transfer Databricks Unity Catalog.
- Di tab Run history, klik View details untuk melihat log.
- Untuk melihat entri yang dibuat, klik tab Details, lalu klik link grup entri Metadata destination.
REST
- Untuk mencantumkan operasi konfigurasi transfer dan melihat statusnya, gunakan metode
projects.locations.transferConfigs.runs.list. Setiap operasi mengimpor metadata yang dikumpulkan ke Knowledge Catalog dengan tugas impor metadata yang ID-nya adalah
dts-run-RUN_ID. Untuk melihat hasil impor, seperti jumlah entri yang dibuat, filter log tugas di Logging menggunakan kueri berikut:logName="projects/PROJECT_ID/logs/dataplex.googleapis.com%2Fmetadata_job" AND resource.labels.metadata_job_id="dts-run-RUN_ID"Untuk melihat hasil impor tanpa menggunakan Logging, panggil metode
projects.locations.metadataJobs.getdiprojects/PROJECT_ID/locations/LOCATION/metadataJobs/dts-run-RUN_ID. KolomimportResultmenampilkan jumlah entri dan link entri yang dibuat, diperbarui, tidak diubah, dan dihapus.
Menelusuri dan melihat metadata Databricks Unity Catalog
Di konsol Google Cloud , buka halaman Search Knowledge Catalog.
Di panel Filters, filter aset Databricks Unity Catalog menggunakan bagian Project, Systems, dan Type aliases. Untuk memfilter semua metadata Databricks Unity Catalog, di bagian Systems, pilih Imported Context, lalu di subbagian Managed Connectors, pilih Databricks Unity.
Di kolom penelusuran, masukkan kata kunci atau kueri penelusuran bahasa alami. Misalnya, untuk melihat semua aset Databricks Unity Catalog melalui penelusuran kata kunci, masukkan
system=DATABRICKS.Untuk mempelajari lebih lanjut cara menelusuri resource, lihat Menelusuri resource di Knowledge Catalog. Untuk mempelajari lebih lanjut ekspresi yang dapat Anda gunakan di kolom penelusuran, lihat Sintaksis penelusuran untuk Knowledge Catalog.
Anda juga dapat menggunakan API LookupContext untuk mengambil konteks LLM untuk resource Databricks Unity Catalog tertentu. Untuk
mengetahui informasi selengkapnya, lihat Mengambil konteks untuk aset
data.
Langkah berikutnya
- Pelajari cara mengelola tugas konektor.