Knowledge Catalog (sebelumnya Dataplex Universal Catalog) memungkinkan Anda mengidentifikasi karakteristik statistik umum (nilai umum, distribusi data, jumlah nilai null) kolom di tabel BigQuery Anda. Informasi ini membantu Anda memahami dan menganalisis data secara lebih efektif.
Untuk mengetahui informasi selengkapnya tentang pemindaian profil data Knowledge Catalog, lihat Tentang pembuatan profil data.
Sebelum memulai
Mengaktifkan Dataplex API.
Peran yang diperlukan untuk mengaktifkan API
Untuk mengaktifkan API, Anda memerlukan izin serviceusage.services.enable. Jika Anda
membuat project, kemungkinan Anda sudah memiliki izin ini melalui
peran Pemilik (roles/owner). Jika tidak, Anda bisa mendapatkan izin ini melalui
peran Admin Penggunaan Layanan (roles/serviceusage.serviceUsageAdmin).
Pelajari cara memberikan peran.
Peran dan izin yang diperlukan
Bagian ini menjelaskan peran dan izin IAM yang diperlukan untuk menggunakan pemindaian profil data Knowledge Catalog.
Peran dan izin pengguna
Untuk mendapatkan izin yang Anda perlukan untuk membuat dan mengelola pemindaian profil data, minta administrator untuk memberi Anda peran IAM berikut:
-
Membuat, menjalankan, memperbarui, dan menghapus pemindaian profil data:
Editor Dataplex DataScan (
roles/dataplex.dataScanEditor) di project yang berisi pemindaian data -
Melihat hasil, tugas, dan histori pemindaian profil data:
Dataplex DataScan Viewer (
roles/dataplex.dataScanViewer) pada project yang berisi pemindaian data -
Publikasikan hasil pemindaian profil data ke Knowledge Catalog:
Dataplex Catalog Editor (
roles/dataplex.catalogEditor) di grup entri@bigquery -
Melihat hasil pemindaian profil data yang dipublikasikan di BigQuery pada tab Profil data:
BigQuery Data Viewer (
roles/bigquery.dataViewer) pada tabel
Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.
Peran bawaan ini berisi izin yang diperlukan untuk membuat dan mengelola pemindaian profil data. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:
Izin yang diperlukan
Izin berikut diperlukan untuk membuat dan mengelola pemindaian profil data:
-
Membuat, menjalankan, memperbarui, dan menghapus pemindaian profil data:
-
dataplex.datascans.createdi project -
dataplex.datascans.updatepada pemindaian data -
dataplex.datascans.deletepada pemindaian data -
dataplex.datascans.runpada pemindaian data -
dataplex.datascans.getpada pemindaian data -
dataplex.datascans.listdi project -
dataplex.dataScanJobs.getpada tugas pemindaian data -
dataplex.dataScanJobs.listpada pemindaian data
-
-
Melihat hasil, tugas, dan histori pemindaian profil data:
-
dataplex.datascans.getDatapada pemindaian data -
dataplex.datascans.listdi project -
dataplex.dataScanJobs.getpada tugas pemindaian data -
dataplex.dataScanJobs.listpada pemindaian data
-
-
Memublikasikan hasil pemindaian profil data ke Knowledge Catalog:
-
dataplex.entryGroups.useDataProfileAspectdi grup entri -
bigquery.tables.updatedi tabel -
dataplex.entries.updatesaat masuk
-
-
Melihat hasil profil data yang dipublikasikan untuk tabel di BigQuery atau Knowledge Catalog:
-
bigquery.tables.getdi tabel -
bigquery.tables.getDatadi tabel
-
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Peran dan izin akun layanan Knowledge Catalog
Untuk memastikan akun layanan Knowledge Catalog memiliki izin yang diperlukan untuk menjalankan pemindaian profil data dan mengekspor hasil, minta administrator Anda untuk memberikan peran IAM berikut kepada akun layanan Knowledge Catalog:
-
Jalankan pemindaian profil data terhadap data BigQuery:
- Pengguna Tugas BigQuery (
roles/bigquery.jobUser) di project yang menjalankan pemindaian - BigQuery Data Viewer (
roles/bigquery.dataViewer) pada tabel yang dipindai
- Pengguna Tugas BigQuery (
-
Menjalankan pemindaian profil data untuk tabel eksternal BigQuery yang menggunakan data Cloud Storage:
- Storage Object Viewer (
roles/storage.objectViewer) di bucket Cloud Storage - Storage Legacy Bucket Reader (
roles/storage.legacyBucketReader) di bucket Cloud Storage
- Storage Object Viewer (
-
Jalankan pemindaian profil data untuk tabel Katalog REST Iceberg di Google Cloud Lakehouse:
BigLake Viewer (
roles/biglake.viewer) pada tabel Iceberg Rest Catalog yang dipindai -
Mengekspor hasil pemindaian profil data ke tabel BigQuery:
BigQuery Data Editor (
roles/bigquery.dataEditor) di tabel
Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.
Peran bawaan ini berisi izin yang diperlukan untuk menjalankan pemindaian profil data dan mengekspor hasilnya. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:
Izin yang diperlukan
Izin berikut diperlukan untuk menjalankan pemindaian profil data dan mengekspor hasil:
-
Jalankan pemindaian profil data terhadap data BigQuery:
-
bigquery.jobs.createdi project -
bigquery.tables.getdi tabel -
bigquery.tables.getDatadi tabel
-
-
Menjalankan pemindaian profil data untuk tabel eksternal BigQuery yang menggunakan data Cloud Storage:
-
storage.buckets.getpada bucket -
storage.objects.getpada objek
-
-
Mengekspor hasil pemindaian profil data ke tabel BigQuery:
-
bigquery.tables.createpada set data -
bigquery.tables.updateDatadi tabel
-
Administrator Anda mungkin juga dapat memberikan izin ini kepada akun layanan Knowledge Catalog dengan peran khusus atau peran bawaan lainnya.
Jika tabel menggunakan keamanan tingkat baris BigQuery, Knowledge Catalog hanya dapat memindai baris yang terlihat oleh akun layanan Knowledge Catalog. Untuk
mengizinkan Knowledge Catalog memindai semua baris, tambahkan akun layanannya ke filter
baris dengan predikat TRUE.
Jika tabel menggunakan keamanan tingkat kolom BigQuery, maka Knowledge Catalog memerlukan akses untuk memindai kolom yang dilindungi. Untuk memberikan akses, berikan peran
Data Catalog Fine-Grained Reader (roles/datacatalog.fineGrainedReader)
kepada akun layanan Knowledge Catalog di semua tag kebijakan yang digunakan dalam tabel. Pengguna yang membuat atau memperbarui pemindaian data juga memerlukan izin pada kolom yang dilindungi.
Memberikan peran ke akun layanan Knowledge Catalog
Untuk menjalankan pemindaian profil data, Knowledge Catalog menggunakan akun layanan yang memerlukan izin untuk menjalankan tugas BigQuery dan membaca data tabel BigQuery. Untuk memberikan peran yang diperlukan, ikuti langkah-langkah berikut:
Dapatkan alamat email akun layanan Knowledge Catalog. Jika Anda belum membuat profil data atau pemindaian kualitas data di project ini sebelumnya, jalankan perintah
gcloudberikut untuk membuat identitas layanan:gcloud beta services identity create --service=dataplex.googleapis.comPerintah ini menampilkan email akun layanan, yang memiliki format berikut: service-PROJECT_ID@gcp-sa-dataplex.iam.gserviceaccount.com.
Jika akun layanan sudah ada, Anda dapat menemukan emailnya dengan melihat akun utama dengan nama Dataplex di halaman IAM di konsol Google Cloud .
Beri akun layanan peran BigQuery Job User (
roles/bigquery.jobUser) di project Anda. Peran ini memungkinkan akun layanan menjalankan tugas BigQuery untuk pemindaian.gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-dataplex.iam.gserviceaccount.com" \ --role="roles/bigquery.jobUser"Ganti kode berikut:
PROJECT_ID: Google Cloud Project ID Anda.service-PROJECT_NUMBER@gcp-sa-dataplex.iam.gserviceaccount.com: email akun layanan Knowledge Catalog.
Beri akun layanan peran BigQuery Data Viewer (
roles/bigquery.dataViewer) untuk setiap tabel yang ingin Anda buat profilnya. Peran ini memberikan akses hanya baca ke tabel.gcloud bigquery tables add-iam-policy-binding DATASET_ID.TABLE_ID \ --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-dataplex.iam.gserviceaccount.com" \ --role="roles/bigquery.dataViewer"Ganti kode berikut:
DATASET_ID: ID set data yang berisi tabel.TABLE_ID: ID tabel yang akan dibuat profilnya.service-PROJECT_NUMBER@gcp-sa-dataplex.iam.gserviceaccount.com: email akun layanan Knowledge Catalog.
Mengonfigurasi identitas eksekusi
Secara default, pemindaian profil data dijalankan menggunakan Agen Layanan Knowledge Catalog. Anda dapat mengganti setelan ini untuk menggunakan akun layanan kustom atau Kredensial Pengguna Akhir (EUC) Anda sendiri.
Menggunakan identitas eksekusi kustom akan mengubah cara penagihan pemindaian. Saat Anda menentukan identitas eksekusi kustom, biaya komputasi dan penyimpanan yang terkait dengan pemindaian akan ditagih langsung ke project BigQuery Anda, tanpa melalui SKU Premium Knowledge Catalog standar.
Izin yang diperlukan untuk identitas eksekusi kustom
Untuk mengonfigurasi akun layanan kustom atau menggunakan kredensial pengguna akhir, Anda harus memiliki izin IAM tambahan berikut:
- Untuk menggunakan akun layanan kustom, Anda memerlukan izin berikut:
- Izin
iam.serviceAccounts.actAsyang diberikan untuk project yang berisi akun layanan (misalnya,roles/iam.serviceAccountUser). - Agen Layanan project Anda (
service-PROJECT_NUMBER@gcp-sa-dataplex.iam.gserviceaccount.com) memerlukan iziniam.serviceAccounts.getAccessTokenpada akun layanan kustom (misalnya, dengan memiliki peranroles/iam.serviceAccountTokenCreator). - Akun layanan kustom memerlukan
bigquery.tables.getDatapada tabel untuk memindai,bigquery.jobs.insertdi project pemindaian, danbigquery.dataEditorpada set data ekspor (jika menggunakan ekspor).
- Izin
- Untuk menggunakan Kredensial Pengguna Akhir, Anda memerlukan:
bigquery.tables.getDatadi atas meja untuk dipindai.bigquery.jobs.insertdi project pemindaian.bigquery.dataEditorpada set data ekspor (jika menggunakan ekspor).
Untuk mengonfigurasi identitas eksekusi, pilih salah satu opsi berikut:
Konsol
Untuk mengonfigurasi identitas eksekusi di konsol Google Cloud , pilih identitas saat Anda membuat pemindaian profil data.
Di bagian Execution Identity, pilih salah satu opsi berikut:
- Akun layanan Dataplex: Perilaku default.
- Akun layanan tertentu: Masukkan alamat email akun layanan yang ingin Anda gunakan.
- Kredensial Pengguna: Gunakan kredensial Anda sendiri untuk menjalankan pemindaian.
REST
Untuk menggunakan akun layanan kustom, tambahkan objek executionIdentity
ke definisi resource DataScan selama permintaan
create:
"executionIdentity": { "serviceAccount": { "email": "YOUR_SERVICE_ACCOUNT_EMAIL" } }
Ganti kode berikut:
YOUR_SERVICE_ACCOUNT_EMAIL: alamat email akun layanan yang ingin Anda gunakan.
Untuk menggunakan kredensial pengguna akhir, tentukan objek userCredential
sebagai gantinya:
"executionIdentity": { "userCredential": {} }
Membuat pemindaian profil data
Konsol
Di konsol Google Cloud , buka halaman Knowledge Catalog Data profiling & quality.
Klik Buat pemindaian profil data.
Opsional: Masukkan Nama tampilan.
Masukkan ID. Lihat Konvensi penamaan resource.
Opsional: Masukkan Deskripsi..
Di kolom Table, klik Browse. Pilih tabel yang akan dipindai, lalu klik Pilih. Hanya tabel BigQuery standar dan Iceberg REST Catalog yang didukung.
Untuk tabel dalam set data multi-region, pilih region tempat pemindaian data akan dibuat.
Untuk menjelajahi tabel yang disusun dalam data lake Knowledge Catalog, klik Jelajahi dalam Data Lake Knowledge Catalog.
Di bagian Mode, pilih salah satu opsi berikut:
Standar: memprofilkan data Anda dengan setelan pemindaian yang dapat disesuaikan. Ini adalah mode defaultnya.
Ringan: memberikan insight cepat dengan pemindaian latensi rendah dan fidelitas rendah.
Jika Anda memilih mode Standar, konfigurasi opsi berikut. Opsi ini tidak muncul saat Anda memilih mode Ringan.
Di kolom Cakupan, pilih Inkremental atau Seluruh data.
Jika Anda memilih Data inkremental, di kolom Kolom stempel waktu, pilih kolom berjenis
DATEatauTIMESTAMPdari tabel BigQuery Anda. Knowledge Catalog menggunakan kolom ini untuk mengidentifikasi data baru saat ditambahkan. Untuk tabel yang dipartisi pada kolom jenisDATEatauTIMESTAMP, sebaiknya gunakan kolom ini sebagai kolom partisi.Opsional: Untuk memfilter data, lakukan salah satu hal berikut:
Untuk memfilter menurut baris, pilih kotak centang Filter baris. Masukkan ekspresi SQL yang valid yang dapat digunakan dalam klausa
WHEREdalam sintaksis GoogleSQL. Misalnya:col1 >= 0.Filter dapat berupa kombinasi kondisi SQL di beberapa kolom. Misalnya:
col1 >= 0 AND col2 < 10.Untuk memfilter menurut kolom, centang kotak Filter kolom.
Untuk menyertakan kolom dalam pemindaian profil, di kolom Sertakan kolom, klik Jelajahi. Pilih kolom yang akan disertakan, lalu klik Pilih.
Untuk mengecualikan kolom dari pemindaian profil, di kolom Kecualikan kolom, klik Jelajahi. Pilih kolom yang akan dikecualikan, lalu klik Pilih.
Untuk menerapkan sampling ke pemindaian profil data, di daftar Ukuran sampling, pilih persentase sampling. Pilih nilai persentase yang berkisar antara 0,0% dan 100,0% dengan maksimal 3 digit desimal.
Untuk set data yang lebih besar, pilih persentase pengambilan sampel yang lebih rendah. Misalnya, untuk tabel 1 PB, jika Anda memasukkan nilai antara 0,1% dan 1,0%, profil data akan mengambil sampel data antara 1-10 TB.
Harus ada minimal 100 data dalam data yang diambil sampelnya untuk menampilkan hasil.
Untuk pemindaian data inkremental, pemindaian profil data menerapkan pengambilan sampel ke penambahan terbaru.
Opsional: Publikasikan hasil pemindaian profil data di halaman BigQuery dan Knowledge Catalog di konsolGoogle Cloud untuk tabel sumber. Centang kotak Publikasikan hasil ke Knowledge Catalog.
Anda dapat melihat hasil pemindaian terbaru di tab Profil data di halaman BigQuery dan Knowledge Catalog untuk tabel sumber. Untuk mengizinkan pengguna mengakses hasil pemindaian yang dipublikasikan, lihat bagian Memberikan akses ke hasil pemindaian profil data dalam dokumen ini.
Opsi publikasi mungkin tidak tersedia dalam kasus berikut:
- Anda tidak memiliki izin yang diperlukan pada tabel.
- Pemindaian profil data lain ditetapkan untuk memublikasikan hasil.
Di bagian Jadwal, pilih salah satu opsi berikut:
Ulangi: Jalankan pemindaian profil data sesuai jadwal: per jam, harian, mingguan, bulanan, atau kustom. Tentukan seberapa sering pemindaian harus dijalankan dan pada pukul berapa. Jika Anda memilih kustom, gunakan format cron untuk menentukan jadwal.
On-demand: Jalankan pemindaian profil data sesuai permintaan.
Jalankan satu kali: Jalankan pemindaian profil data sekali sekarang, dan hapus pemindaian setelah waktu penghapusan otomatis. Fitur ini berada dalam Pratinjau.
- Menetapkan penghapusan otomatis hasil pasca-pemindaian: Waktu penghapusan otomatis menentukan durasi pemindaian profil data tetap aktif setelah dieksekusi. Pemindaian profil data tanpa waktu penghapusan otomatis yang ditentukan akan otomatis dihapus setelah 24 jam. Waktu penghapusan otomatis dapat berkisar dari 0 detik (penghapusan langsung) hingga 365 hari.
Klik Lanjutkan.
Opsional: Ekspor hasil pemindaian ke tabel standar BigQuery. Di bagian Ekspor hasil pemindaian ke tabel BigQuery, lakukan hal berikut:
Di kolom Select BigQuery dataset, klik Browse. Pilih set data BigQuery untuk menyimpan hasil pemindaian profil data.
Di kolom Tabel BigQuery, tentukan tabel untuk menyimpan hasil pemindaian profil data. Jika Anda menggunakan tabel yang sudah ada, pastikan tabel tersebut kompatibel dengan skema tabel ekspor. Jika tabel yang ditentukan tidak ada, Knowledge Catalog akan membuatnya untuk Anda.
Opsional: Tambahkan label. Label adalah key-value pair yang memungkinkan Anda mengelompokkan objek terkait secara bersamaan atau dengan resource Google Cloud lainnya.
Untuk membuat pemindaian, klik Buat.
Jika Anda menyetel jadwal ke on-demand, Anda juga dapat menjalankan pemindaian sekarang dengan mengklik Jalankan pemindaian.
gcloud
Untuk membuat pemindaian profil data, gunakan
perintah gcloud dataplex datascans create data-profile.
Jika data sumber disusun dalam lake Knowledge Catalog, sertakan
flag --data-source-entity:
gcloud dataplex datascans create data-profile DATASCAN \ --location=LOCATION \ --data-source-entity=DATA_SOURCE_ENTITY
Jika data sumber tidak diatur dalam data lake Knowledge Catalog, sertakan
flag --data-source-resource:
gcloud dataplex datascans create data-profile DATASCAN \ --location=LOCATION \ --data-source-resource=DATA_SOURCE_RESOURCE
Ganti variabel berikut:
DATASCAN: Nama pemindaian profil data.LOCATION: Region Google Cloud tempat pembuatan pemindaian profil data.DATA_SOURCE_ENTITY: Entitas Knowledge Catalog yang berisi data untuk pemindaian profil data. Contoh,projects/test-project/locations/test-location/lakes/test-lake/zones/test-zone/entities/test-entity.DATA_SOURCE_RESOURCE: Nama resource yang berisi data untuk pemindaian profil data. Contoh,//bigquery.googleapis.com/projects/test-project/datasets/test-dataset/tables/test-table.
C#
C#
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan C# di Panduan memulai Knowledge Catalog menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Knowledge Catalog C# API.
Untuk melakukan autentikasi ke Knowledge Catalog, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Go
Go
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Go di Panduan memulai Knowledge Catalog menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Knowledge Catalog Go API.
Untuk melakukan autentikasi ke Knowledge Catalog, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Java
Java
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Java di Panduan memulai Knowledge Catalog menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Knowledge Catalog Java API.
Untuk melakukan autentikasi ke Knowledge Catalog, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
Python
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Python di Panduan memulai Knowledge Catalog menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Knowledge Catalog Python API.
Untuk melakukan autentikasi ke Knowledge Catalog, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Ruby
Ruby
Sebelum mencoba contoh ini, ikuti petunjuk penyiapan Ruby di Panduan memulai Knowledge Catalog menggunakan library klien. Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi Knowledge Catalog Ruby API.
Untuk melakukan autentikasi ke Knowledge Catalog, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
REST
Untuk membuat pemindaian profil data, gunakan
metode dataScans.create.
Mengekspor skema tabel
Jika Anda ingin mengekspor hasil pemindaian profil data ke tabel BigQuery yang ada, pastikan tabel tersebut kompatibel dengan skema tabel berikut:
| Nama kolom | Jenis data kolom | Nama sub-kolom (jika ada) | Jenis data sub-bidang | Mode | Contoh |
|---|