Membuat produk data

Dokumen ini ditujukan bagi pemilik produk data yang ingin membuat dan mengonfigurasi produk data di Knowledge Catalog (sebelumnya Dataplex Universal Catalog).

Untuk mengetahui informasi selengkapnya tentang arsitektur dan konsep utama produk data, lihat Tentang produk data.

Sebelum memulai

Sebelum Anda membuat produk data, selesaikan prasyarat berikut.

Mengaktifkan Gemini

Mengonfigurasi Gemini di aset data Anda adalah langkah opsional, tetapi sangat direkomendasikan sebelum Anda membuat produk data pertama.

Secara default, pembuatan produk data mengharuskan Anda memasukkan deskripsi bisnis, definisi teknis, dan dokumentasi aktivasi aset secara manual. Saat Anda mengaktifkan integrasi Gemini, Knowledge Catalog memanfaatkan bantuan AI untuk menganalisis skema dan hasil pemindaian data secara otomatis guna menghasilkan hal berikut:

  • Dokumentasi bisnis: Membuat template dokumentasi dan deskripsi yang jelas untuk produk data Anda dan aset data individualnya.
  • Insight dan contoh kueri: Membuat contoh kueri siap pakai berdasarkan tata letak skema aset, sehingga konsumen data dapat langsung mulai membuat kueri produk setelah disetujui.

Jika Anda memilih untuk tidak mengaktifkan Gemini, Anda dapat melewati bagian ini. Namun, Anda harus memberikan semua metadata aset dan template kueri secara manual selama pembuatan.

Untuk mengetahui informasi selengkapnya tentang cara mengaktifkan Gemini di BigQuery, lihat Menyiapkan Gemini di BigQuery.

Mengaktifkan API

Aktifkan Dataplex dan BigQuery API.

Peran yang diperlukan untuk mengaktifkan API

Untuk mengaktifkan API, Anda memerlukan peran IAM Service Usage Admin (roles/serviceusage.serviceUsageAdmin), yang berisi izin serviceusage.services.enable. Pelajari cara memberikan peran.

Aktifkan API

Membuat aset data

Pastikan aset data Anda (misalnya, set data, tabel, dan tampilan BigQuery) dibuat dan diisi.

Untuk mengetahui informasi selengkapnya tentang cara membuat aset data, lihat dokumen berikut:

Mengonfigurasi identitas

Identifikasi atau buat Google Grup atau akun layanan yang ingin Anda konfigurasi di produk data Anda.

Peran yang diperlukan

Bagian ini menguraikan peran IAM minimum yang diperlukan untuk bagian utama berikut:

  • Pemilik produk data: pengguna yang membuat, mengonfigurasi, dan mengelola produk data serta aset terkaitnya

  • Konsumen produk data: pengguna yang menelusuri, melihat, dan meminta akses ke produk data yang dipublikasikan

Peran yang diperlukan untuk pemilik produk data

Untuk mendapatkan izin yang Anda perlukan untuk membuat dan mengelola produk data, minta administrator untuk memberi Anda peran IAM berikut pada project:

  • Izin penuh untuk membuat, memperbarui, menghapus, mengelola izin, dan menyetujui atau menolak permintaan akses untuk produk data: Admin Produk Data Dataplex (roles/dataplex.dataProductsAdmin)
  • Perbarui dan kelola izin, serta setujui atau tolak permintaan akses untuk produk data: Editor Produk Data Dataplex (roles/dataplex.dataProductsEditor)
  • Tambahkan aspek metadata (seperti schema, overview, contacts, dan queries): Pemilik Entri dan EntryLink Dataplex (roles/dataplex.entryOwner)
  • Menelusuri dan menambahkan aset: Dataplex Catalog Viewer (roles/dataplex.catalogViewer)
  • Mengedit jenis aspek sistem (seperti overview, contact, contract, dan queries): Editor Katalog Dataplex (roles/dataplex.catalogEditor)
  • Membuat atau mengambil pemindaian data insight untuk dokumentasi otomatis dan pembuatan insight: Admin Dataplex DataScan (roles/dataplex.dataScanAdmin)

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 produk data. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:

Izin yang diperlukan

Izin berikut diperlukan untuk membuat dan mengelola produk data:

  • Buat produk data: dataplex.dataProducts.create
  • Mencantumkan produk data dalam project: dataplex.dataProducts.list
  • Mendapatkan atau melihat produk data: dataplex.dataProducts.get
  • Mengedit produk data yang ada: dataplex.dataProducts.update
  • Menghapus produk data: dataplex.dataProducts.delete
  • Menyetujui permintaan akses produk data: dataplex.dataProducts.approve
  • Telusuri produk data menggunakan Knowledge Catalog:
    • dataplex.dataProducts.get
    • dataplex.projects.search
  • Buat permintaan akses produk data: dataplex.dataProducts.get
  • Buat aset data: dataplex.dataAssets.create
  • Mencantumkan aset data dalam produk data: dataplex.dataAssets.list
  • Mendapatkan aset data: dataplex.dataAssets.get
  • Mengedit aset data yang ada: dataplex.dataAssets.update
  • Menghapus aset data: dataplex.dataAssets.delete
  • Buat pemindaian data: dataplex.datascans.create
  • Mencantumkan semua pemindaian data: dataplex.datascans.list
  • Mendapatkan pemindaian data: dataplex.datascans.get
  • Menjalankan pemindaian data: dataplex.datascans.run
  • Edit jenis aspek sistem overview: dataplex.entryGroups.useOverviewAspect
  • Edit jenis aspek sistem refresh cadence: dataplex.entryGroups.useRefreshCadenceAspect
  • Edit jenis aspek sistem queries: dataplex.entryGroups.useQueriesAspect

Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.

Peran yang diperlukan untuk konsumen produk data

Agar konsumen produk data dapat menelusuri, melihat, dan meminta akses ke produk data, sebagai pemilik produk data, Anda harus memastikan produk data dapat ditemukan. Untuk melakukannya, berikan peran IAM berikut kepada konsumen produk data di produk data:

  • Cari produk data dan minta akses ke produk data tersebut: Konsumen Produk Data Dataplex (dataplex.dataProductsConsumer) dan Pelihat Katalog Dataplex (roles/dataplex.catalogViewer)
  • Akses hanya baca untuk melihat definisi dan metadata produk data: Pelihat Produk Data Dataplex (dataplex.dataProductsViewer)

Membuat dan mengonfigurasi produk data

Pembuatan produk data melibatkan tugas-tugas tingkat tinggi berikut:

  1. Membuat produk data

    Langkah awal yang wajib dilakukan ini memerlukan penentuan detail inti seperti nama produk data yang unik, deskripsi, region tempat produk data dibuat, dan detail kontak.

  2. Opsional: Menambahkan aset

    Pada fase ini, Anda memilih aset yang akan disertakan dalam produk data. Batasan utama adalah aset harus berada di region yang sama dengan produk data itu sendiri. Anda dapat menambahkan hingga 10 aset sekaligus, dengan total maksimum 50 aset yang diizinkan per produk data.

    Untuk mengetahui daftar aset yang didukung, lihat Aset yang didukung.

  3. Opsional: Mengonfigurasi grup akses dan izin aset

    Pada fase opsional ini, Anda menyederhanakan kontrol akses dengan membuat grup akses. Grup akses ini bertindak sebagai alias yang mudah digunakan (misalnya, Analyst atau Reader) untuk akun layanan dan Google Grup yang mendasarinya. Kemudian, Anda menetapkan izin dengan memilih peran IAM tertentu dan memetakannya ke grup akses untuk aset tertentu.

  4. Opsional: Tambahkan detail kontrak dan aspek

    Pada fase ini, Anda meningkatkan tata kelola dan visibilitas data dengan melampirkan framework metadata. Anda dapat menambahkan kontrak untuk secara resmi mengomunikasikan irama pembaruan data, dengan menentukan parameter seperti frekuensi pembaruan, waktu, dan nilai minimum varians. Anda juga dapat melampirkan aspek kustom untuk memberikan metadata bisnis atau teknis tambahan untuk produk data Anda.

  5. Opsional: Tambahkan detail lainnya

    Pada fase terakhir ini, Anda menambahkan dokumentasi teks kaya, seperti panduan orientasi pengguna, definisi bisnis, dan contoh kueri, untuk membantu konsumen berinteraksi dengan produk data segera setelah disetujui.

Untuk membuat dan mengonfigurasi produk data, selesaikan langkah-langkah di bagian berikut:

Membuat produk data

Konsol

  1. Di konsol Google Cloud , buka halaman Produk data Knowledge Catalog.

    Buka Produk data

  2. Klik Create.

  3. Di panel Create data products, masukkan detail berikut:

    • Nama produk data: Masukkan nama unik untuk produk data Anda.
    • ID produk data: Ini adalah ID unik yang dibuat secara otomatis. Anda dapat mengedit kolom ini.
    • Project ID: Ini adalah ID unik project tempat produk data dibuat. Jelajahi dan pilih project.
    • Region: Pilih region atau multi-region tempat produk data dibuat.
    • Ikon produk data: Jelajahi dan pilih ikon untuk mengidentifikasi produk data secara visual. Tindakan tersebut bersifat opsional.
    • Deskripsi: Masukkan deskripsi singkat tentang produk data.
    • Kontak: Berikan informasi kontak untuk alur kerja persetujuan dan tata kelola:

      • Alamat email pemilik produk data: Masukkan alamat email pemilik produk data.
      • Alamat email pemberi persetujuan produk data: Masukkan alamat email pemberi persetujuan yang ditunjuk yang bertanggung jawab untuk menyetujui permintaan atau perubahan akses.
    • Label: Tambahkan label key-value untuk mengatur resource Anda. Ini bersifat opsional.

  4. Klik Buat produk data.

REST

Untuk membuat produk data, gunakan metode dataProducts.create.

Misalnya, kirim permintaan POST berikut:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{"display_name": "DISPLAY_NAME", "owner_emails": ["EMAIL_IDs"], "access_approval_config": { "approver_emails": ["APPROVER_EMAIL_IDs"]} }' \
https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataProducts?data_product_id=DATA_PRODUCT_ID

Ganti kode berikut:

  • DISPLAY_NAME: nama produk data yang mudah digunakan
  • EMAIL_IDs: alamat email pemilik produk data yang dipisahkan koma
  • APPROVER_EMAIL_IDs: alamat email yang dipisahkan koma dari pemberi persetujuan yang ditunjuk yang bertanggung jawab untuk menyetujui permintaan atau perubahan akses.
  • PROJECT_ID: ID project Google Cloud Anda
  • LOCATION: region tempat Anda ingin membuat produk data
  • DATA_PRODUCT_ID: ID unik untuk produk data Anda

Terraform

Untuk membuat produk data, gunakan resource google_dataplex_data_product.

resource "google_dataplex_data_product" "example_product" {
project         = "PROJECT_ID"
location        = "LOCATION"
data_product_id = "DATA_PRODUCT_ID"
display_name    = "DISPLAY_NAME"
description     = "DESCRIPTION"
owner_emails    = ["EMAIL_IDs"]

provider = google-beta
}

Ganti kode berikut:

  • PROJECT_ID: ID Google Cloud project Anda
  • LOCATION: region tempat Anda ingin membuat produk data
  • DATA_PRODUCT_ID: ID unik untuk produk data Anda
  • DISPLAY_NAME: nama produk data yang mudah digunakan
  • DESCRIPTION: deskripsi singkat produk data
  • EMAIL_IDs: alamat email pemilik produk data yang dipisahkan koma, misalnya—["user1@example.com", "user2@example.com"]

Opsional: Tambahkan aset

Anda dapat menambahkan berbagai aset data, seperti tabel, tampilan, set data, dan model BigQuery ke produk data Anda. Untuk mengetahui daftar aset yang didukung, lihat Aset yang didukung.

Konsol

  1. Di panel Tambahkan aset, klik +Tambahkan.

  2. Telusuri dan pilih aset yang ingin Anda tambahkan ke produk data. Aset yang Anda pilih harus berada di region yang sama dengan produk data.

    Jika memiliki izin yang diperlukan, Anda dapat melihat metadata aset dengan mengklik aset.

  3. Untuk menyaring hasil penelusuran, gunakan Filter.

  4. Setelah Anda memilih aset, klik Tambahkan.

  5. Klik Lanjutkan.

REST

Untuk menambahkan aset data ke produk data, gunakan metode dataAssets.create.

Misalnya, kirim permintaan POST berikut:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{"resource": "RESOURCE_NAME"}' \
https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataProducts/DATA_PRODUCT_ID/dataAssets?data_asset_id=DATA_ASSET_ID

Ganti kode berikut:

  • RESOURCE_NAME: nama resource lengkap aset data (misalnya, //bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID/tables/TABLE_ID)
  • PROJECT_ID: ID Google Cloud project Anda
  • LOCATION: region tempat produk data berada
  • DATA_PRODUCT_ID: ID produk data
  • DATA_ASSET_ID: ID unik untuk aset data ini dalam produk data

Terraform

Untuk menambahkan aset data ke produk data Anda, gunakan google_dataplex_data_product_data_asset resource.

resource "google_dataplex_data_product_data_asset" "example_asset" {
project         = "PROJECT_ID"
location        = "LOCATION"
data_product_id = "DATA_PRODUCT_ID"
data_asset_id   = "DATA_ASSET_ID"
resource        = "RESOURCE_NAME"

provider = google-beta
}

Ganti kode berikut:

  • PROJECT_ID: ID Google Cloud project Anda
  • LOCATION: region tempat produk data berada
  • DATA_PRODUCT_ID: ID produk data
  • DATA_ASSET_ID: ID unik untuk aset data ini dalam produk data
  • RESOURCE_NAME: nama resource lengkap aset data (misalnya, //bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID/tables/TABLE_ID)

Opsional: Mengonfigurasi grup akses dan izin aset

Di panel Konfigurasi grup akses dan izin aset, Anda dapat membuat grup akses dan menetapkan izin ke aset.

Mengonfigurasi grup akses

Konsol

  1. Klik Tambahkan grup akses.

  2. Di kolom Nama grup akses, masukkan nama untuk grup akses. Contoh, Analyst.

  3. Di kolom Deskripsi grup akses, masukkan deskripsi untuk grup akses.

  4. Di kolom Access group identifier, masukkan alamat email Grup Google yang ingin Anda tetapkan ke grup akses ini

    Konsumen produk data yang meminta akses untuk diri mereka sendiri akan ditambahkan sebagai anggota ke Grup Google yang dipetakan.

    Untuk mengetahui informasi selengkapnya tentang cara membuat Google Grup, lihat artikel Membuat dan mengelola Google Grup di konsol Google Cloud .

  5. Di kolom Access group service account, masukkan alamat email akun layanan yang ingin Anda tetapkan ke grup akses ini.

    Konsumen produk data yang meminta akses untuk akun layanan mereka akan diberi peran IAM Service Account Token Creator (roles/iam.serviceAccountTokenCreator) untuk meniru akun layanan produsen data yang dipetakan ke grup akses.

    Untuk mengetahui informasi selengkapnya tentang cara membuat akun layanan, lihat Membuat akun layanan.

  6. Klik Done.

  7. Untuk menambahkan grup akses lain, klik Tambahkan grup akses dan ulangi langkah-langkahnya.

    Anda dapat menambahkan maksimal tiga grup akses per produk data.

  8. Klik Simpan.

REST

Untuk mengonfigurasi grup akses untuk produk data, gunakan metode dataProducts.patch.

Misalnya, kirim permintaan PATCH berikut:

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{"access_groups": ACCESS_GROUPS_MAP}' \
https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataProducts/DATA_PRODUCT_ID?update_mask="access_groups"

Ganti kode berikut:

  • ACCESS_GROUPS_MAP: objek JSON yang merepresentasikan peta di mana setiap kunci adalah ID grup akses dan nilainya adalah objek AccessGroup. Contoh:

    {
    "analyst": {
      "id": "analyst",
      "display_name": "Analyst access group",
      "description": "Access group for analysts",
      "principal":
        {
          "google_group": "analyst-team@example.com",
          "service_account": "analyst-svc@gserviceaccount.com"
        }
    }
    
  • PROJECT_ID: ID project Google Cloud Anda

  • LOCATION: region tempat produk data berada

  • DATA_PRODUCT_ID: ID produk data Anda

Terraform

Untuk menentukan grup akses bagi produk data Anda, gunakan blok access_groups bertingkat dalam resource google_dataplex_data_product.

Misalnya, gunakan konfigurasi berikut:

resource "google_dataplex_data_product" "example_data_product" {
project         = "PROJECT_ID"
location        = "LOCATION"
data_product_id = "DATA_PRODUCT_ID"
display_name    = "DISPLAY_NAME"
owner_emails    = ["EMAIL_IDs"]

access_groups {
  id           = "analyst" # Internal identifier for configuration
  group_id     = "analyst" # Unique identifier of the access group, should be same as the 'id'
  display_name = "Business Analyst"
  description  = "Access group for regional analysts"
  principal {
    google_group = "analyst-team@example.com"
  }

provider = google-beta
}

Ganti kode berikut:

  • PROJECT_ID: ID Google Cloud project Anda
  • LOCATION: region tempat produk data berada
  • DATA_PRODUCT_ID: ID unik untuk produk data
  • DISPLAY_NAME: nama produk data yang mudah digunakan
  • EMAIL_IDs: alamat email pemilik produk data yang dipisahkan koma, misalnya—["user1@example.com", "user2@example.com"]

Mengonfigurasi izin aset

Setelah mengonfigurasi grup akses, Anda dapat mengonfigurasi izin untuk aset dalam produk data.

Konsol

  1. Di bagian Izin aset, pilih aset yang izinnya ingin Anda konfigurasi. Anda dapat memilih dan mengonfigurasi izin untuk hingga 10 aset sekaligus.

  2. Klik Konfigurasi izin.

  3. Di kolom Pilih grup akses, pilih grup akses.

  4. Di kolom Tetapkan peran IAM, pilih peran IAM yang ingin Anda tetapkan ke grup akses.

    Misalnya, jika aset Anda adalah tabel BigQuery bernama Sales, dan jika Anda memilih grup akses Analyst, serta menetapkan peran BigQuery Metadata Viewer ke grup akses ini, konsumen produk data yang merupakan bagian dari grup akses Analyst memiliki izin BigQuery Metadata Viewer pada tabel Sales.

    Anda dapat menambahkan beberapa peran ke aset.

  5. Klik Configure. Aset kini menampilkan izin yang ditetapkan.

  6. Untuk mengonfigurasi izin aset lainnya, ulangi langkah-langkah tersebut.

  7. Klik Lanjutkan.

REST

Untuk mengonfigurasi izin aset dalam produk data, gunakan metode dataAssets.patch.

Misalnya, kirim permintaan PATCH berikut:

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{"access_group_configs": ACCESS_GROUP_CONFIGS_MAP}' \
https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataProducts/DATA_PRODUCT_ID/dataAssets/DATA_ASSET_ID?update_mask="access_group_configs"

Ganti kode berikut:

  • ACCESS_GROUP_CONFIGS_MAP: objek JSON yang merepresentasikan peta di mana setiap kunci adalah ID grup akses dan nilainya adalah objek AccessGroupConfig. Contoh:

    {
    "analyst": {
      iam_roles: ["roles/bigquery.dataViewer"]
      }
    }
    
  • PROJECT_ID: ID project Google Cloud Anda

  • LOCATION: region tempat produk data berada

  • DATA_PRODUCT_ID: ID produk data Anda

  • DATA_ASSET_ID: ID aset yang izinnya ingin Anda konfigurasi

Terraform

Tetapkan peran IAM ke grup akses Anda untuk aset tertentu menggunakan blok access_group_configs di resource google_dataplex_data_product_data_asset.

Misalnya, gunakan konfigurasi berikut:

resource "google_dataplex_data_product_data_asset" "example_data_asset" {
project         = "PROJECT_ID"
location        = "LOCATION"
data_product_id = "DATA_PRODUCT_ID"
data_asset_id   = "DATA_ASSET_ID"
resource        = "RESOURCE_NAME"

access_group_configs {
  access_group = "analyst" # Must match the 'id' defined in google_dataplex_data_product
  iam_roles    = ["roles/bigquery.dataViewer"]
}

provider = google-beta
}

Ganti kode berikut:

  • PROJECT_ID: ID Google Cloud project Anda
  • LOCATION: region tempat produk data berada
  • DATA_PRODUCT_ID: ID produk data
  • DATA_ASSET_ID: ID unik untuk aset data ini dalam produk data
  • RESOURCE_NAME: nama resource lengkap aset data (misalnya, //bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID/tables/TABLE_ID)

Opsional: Tambahkan detail kontrak dan aspek

Anda dapat menambahkan kontrak dan aspek untuk produk data.

Menambahkan kontrak

Untuk membangun fondasi kepercayaan antara produsen dan konsumen data, Anda dapat melampirkan kontrak ke produk data Anda. Dengan menentukan parameter seperti waktu dan nilai minimum pembaruan, Anda memberikan konteks yang diperlukan kepada konsumen untuk memahami kapan data diperbarui dan apakah data tersebut memenuhi persyaratan bisnis spesifik mereka.

Konsol

  1. Di panel Tambahkan detail kontrak dan aspek, klik Tambahkan kontrak.

  2. Di kolom Select contract, pilih Refresh cadence.

  3. Di kolom Frekuensi, pilih jadwal yang disepakati untuk seberapa sering data diperbarui atau dikirimkan, sehingga memastikan alur yang dapat diprediksi dari produsen data ke konsumen data. Contoh, Weekly.

  4. Di kolom Waktu pembaruan, masukkan waktu maksimum yang dapat diterima saat data diperbarui di sumbernya dan saat data tersedia untuk konsumen. Contoh, 23:00 PST.

  5. Di kolom Threshold (dalam menit), masukkan batas yang dapat diukur dalam menit untuk penundaan yang dapat diterima dalam pengiriman data. Misalnya, masukkan 30 untuk menetapkan batas 30 menit.

  6. Opsional: Di kolom Cron schedule, masukkan ekspresi cron yang menentukan jadwal untuk pembuatan dan pengiriman data dalam format: MINUTE HOUR DAY_OF_MONTH MONTH DAY_OF_WEEK

    Berikut adalah nilai yang diterima:

    • MINUTE: 0-59
    • HOUR: 0-23
    • DAY_OF_MONTH: 1-31
    • MONTH: 1-31 atau JAN-DEC
    • DAY_OF_WEEK: 0-6 atau SUN-SAT

    Misalnya, 0 8 * * 1-5 berjalan pada pukul 08.00 pada hari kerja (Senin-Jumat).

  7. Klik Simpan.

REST

Kontrak dimodelkan sebagai aspek pada produk data. Untuk menambahkan kontrak Refresh Cadence untuk produk data, gunakan metode entries.patch.

Misalnya, kirim permintaan PATCH berikut:

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d \
'{
  "aspects": {
    "dataplex-types.global.refresh-cadence": {
      "aspectType": "projects/dataplex-types/locations/global/aspectTypes/refresh-cadence",
      "data": {
        "frequency": "REFRESH_FREQUENCY"
      }
    }
  }
}' \
"https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/entryGroups/@dataplex/entries/projects/DATA_PRODUCT_PROJECT_NUMBER/locations/DATA_PRODUCT_LOCATION/dataProducts/DATA_PRODUCT_ID?updateMask=aspects"

Ganti kode berikut:

  • REFRESH_FREQUENCY: jadwal yang disepakati untuk seberapa sering data diperbarui atau dikirimkan, sehingga memastikan alur yang dapat diprediksi dari produsen data ke konsumen data. Contoh: Weekly
  • PROJECT_ID: ID Google Cloud project tempat panggilan API dilakukan
  • LOCATION: region endpoint layanan Knowledge Catalog yang Anda panggil (misalnya, us-central1)
  • DATA_PRODUCT_PROJECT_NUMBER: nomor project tempat resource produk data berada
  • DATA_PRODUCT_LOCATION: lokasi resource produk data
  • DATA_PRODUCT_ID: ID produk data Anda

Terraform

Kontrak dimodelkan sebagai aspek pada produk data. Untuk mengelola kontrak, Anda harus mengelola entri Knowledge Catalog yang mendasarinya. Karena Terraform tidak otomatis menemukan aspek yang ada, Anda harus mengimpor google_dataplex_entry terlebih dahulu.

Untuk mengimpor entri, gunakan perintah berikut:

terraform import google_dataplex_entry.data_product_metadata "projects/DATA_PRODUCT_PROJECT_NUMBER/locations/LOCATION/entryGroups/@dataplex/entries/projects/DATA_PRODUCT_PROJECT_NUMBER/locations/LOCATION/dataProducts/DATA_PRODUCT_ID"

Konfigurasi Terraform:

resource "google_dataplex_entry" "data_product_metadata" {
project        = "DATA_PRODUCT_PROJECT_NUMBER"
location       = "LOCATION"
entry_group_id = "@dataplex"
entry_id       = "projects/DATA_PRODUCT_PROJECT_NUMBER/locations/LOCATION/dataProducts/DATA_PRODUCT_ID"
entry_type     = "projects/655216118709/locations/global/entryTypes/data-product"

aspects {
  aspect_key = "655216118709.global.refresh-cadence"
  aspect {
    data = jsonencode({
      frequency = "REFRESH_FREQUENCY"
    })
  }
}

provider = google-beta
}

Ganti kode berikut:

  • DATA_PRODUCT_PROJECT_NUMBER: nomor project tempat resource produk data berada
  • LOCATION: region endpoint layanan Knowledge Catalog yang Anda panggil (misalnya, us-central1)
  • DATA_PRODUCT_ID: ID produk data Anda
  • REFRESH_FREQUENCY: jadwal yang disepakati untuk seberapa sering data diperbarui atau dikirimkan, sehingga memastikan alur yang dapat diprediksi dari produsen data ke konsumen data. Contoh: Weekly

Untuk mengetahui informasi umum tentang proses impor, lihat dokumentasi impor Terraform.

Menambahkan aspek

Gunakan aspek untuk memperkaya produk data Anda dengan metadata terstruktur yang dapat digunakan kembali. Template ini memberikan cara standar bagi produsen data untuk mengomunikasikan kualitas dan kesesuaian produk data, sehingga meningkatkan tata kelola dan membantu konsumen menentukan apakah produk tersebut memenuhi kebutuhan bisnis mereka.

Untuk menambahkan aspek produk data, ikuti langkah-langkah berikut:

Konsol

  1. Di panel Tambahkan detail kontrak dan aspek, klik + Tambahkan aspek.

  2. Di kolom Pilih jenis aspek, telusuri dan pilih jenis aspek dari daftar. Contoh, Geo context.

  3. Klik Simpan.

REST

Untuk menambahkan aspek produk data, gunakan metode entries.patch.

Misalnya, kirim permintaan PATCH berikut:

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d \
'{
  "aspects": {
    "ASPECT_PROJECT_ID.ASPECT_LOCATION.ASPECT_NAME": {
      "aspectType": "projects/ASPECT_PROJECT_ID/locations/ASPECT_LOCATION/aspectTypes/ASPECT_NAME",
      "data": {}
    }
  }
}' \
"https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/entryGroups/@dataplex/entries/projects/DATA_PRODUCT_PROJECT_NUMBER/locations/DATA_PRODUCT_LOCATION/dataProducts/DATA_PRODUCT_ID?updateMask=aspects"

Ganti kode berikut:

  • ASPECT_PROJECT_ID: ID project Google Cloud tempat aspek dibuat
  • ASPECT_LOCATION: region endpoint layanan Knowledge Catalog tempat aspek dibuat (misalnya, us-central1)
  • ASPECT_NAME: nama aspek yang ingin Anda lampirkan ke produk data
  • PROJECT_ID: ID Google Cloud project tempat panggilan API dilakukan
  • LOCATION: region endpoint layanan Knowledge Catalog yang Anda panggil (misalnya, us-central1)
  • DATA_PRODUCT_PROJECT_NUMBER: nomor project tempat resource produk data berada
  • DATA_PRODUCT_LOCATION: lokasi resource produk data
  • DATA_PRODUCT_ID: ID produk data Anda

Terraform

Untuk mengelola aspek, Anda harus mengelola entri Knowledge Catalog yang mendasarinya. Karena Terraform tidak otomatis menemukan aspek yang ada, Anda harus mengimpor google_dataplex_entry terlebih dahulu.

Untuk mengimpor entri, gunakan perintah berikut:

terraform import google_dataplex_entry.data_product_metadata "projects/DATA_PRODUCT_PROJECT_NUMBER/locations/LOCATION/entryGroups/@dataplex/entries/projects/DATA_PRODUCT_PROJECT_NUMBER/locations/LOCATION/dataProducts/DATA_PRODUCT_ID"

Konfigurasi Terraform:

resource "google_dataplex_entry" "data_product_metadata" {
project        = "DATA_PRODUCT_PROJECT_NUMBER"
location       = "LOCATION"
entry_group_id = "@dataplex"
entry_id       = "projects/DATA_PRODUCT_PROJECT_NUMBER/locations/LOCATION/dataProducts/DATA_PRODUCT_ID"
entry_type     = "projects/655216118709/locations/global/entryTypes/data-product"

aspects {
  aspect_key = "ASPECT_PROJECT_NUMBER.ASPECT_LOCATION.ASPECT_NAME"
  aspect {
    data = {}
  }
}

provider = google-beta
}

Ganti kode berikut:

  • DATA_PRODUCT_PROJECT_NUMBER: nomor project tempat resource produk data berada
  • LOCATION: region endpoint layanan Knowledge Catalog yang Anda panggil (misalnya, us-central1)
  • DATA_PRODUCT_ID: ID produk data Anda
  • ASPECT_PROJECT_NUMBER: nomor Google Cloud project tempat aspek dibuat
  • ASPECT_LOCATION: region endpoint layanan Knowledge Catalog tempat aspek dibuat (misalnya, us-central1)
  • ASPECT_NAME: nama aspek yang ingin Anda lampirkan ke produk data

Untuk mengetahui informasi umum tentang proses impor, lihat dokumentasi impor Terraform.

Opsional: Tambahkan detail tambahan

Anda dapat menambahkan dokumentasi dan contoh kueri untuk produk data Anda guna memberikan konteks penting, deskripsi logika bisnis, dan panduan pengguna. Di Knowledge Catalog, dokumentasi dikelola melalui overviewaspek sistem.

Anda dapat membuat dokumentasi ini secara manual atau menggunakan Insight data Knowledge Catalog untuk membuatnya secara otomatis.

Menambahkan dokumentasi dan contoh kueri secara manual

Konsol

Untuk menambahkan dokumentasi produk data Anda, ikuti langkah-langkah berikut:

  1. Di panel Tambahkan detail tambahan, klik Edit di samping Dokumentasi.

  2. Ketik konten di editor rich text.

  3. Klik Simpan.

Untuk menambahkan contoh kueri untuk produk data Anda, ikuti langkah-langkah berikut:

  1. Di panel Tambahkan detail tambahan, klik Tambahkan kueri di bagian Rekomendasi kueri.

  2. Ketik contoh kueri.

  3. Klik Simpan.

Produk data yang baru dibuat akan muncul di halaman Produk data Knowledge Catalog.

REST

Dokumentasi dimodelkan sebagai aspek pada produk data. Untuk menambahkan dokumentasi, gunakan metode entries.patch.

Misalnya, kirim permintaan PATCH berikut:

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d \
'{
  "aspects": {
    "dataplex-types.global.overview": {
      "aspectType": "projects/dataplex-types/locations/global/aspectTypes/overview",
      "data": {
        "content": "DOCUMENTATION"
      }
    }
  }
}' \
"https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/entryGroups/@dataplex/entries/projects/DATA_PRODUCT_PROJECT_NUMBER/locations/DATA_PRODUCT_LOCATION/dataProducts/DATA_PRODUCT_ID?updateMask=aspects"

Ganti kode berikut:

  • PROJECT_ID: ID Google Cloud project tempat panggilan API dilakukan
  • LOCATION: region endpoint layanan Knowledge Catalog yang Anda panggil (misalnya, us-central1)
  • DATA_PRODUCT_PROJECT_NUMBER: nomor project tempat resource produk data berada
  • DATA_PRODUCT_LOCATION: lokasi resource produk data
  • DATA_PRODUCT_ID: ID produk data Anda
  • DOCUMENTATION: konten yang ingin Anda lampirkan ke produk data

Terraform

Dokumentasi dimodelkan sebagai aspek pada produk data. Untuk mengelola dokumentasi, Anda harus mengelola entri Knowledge Catalog yang mendasarinya. Karena Terraform tidak otomatis menemukan aspek yang ada, Anda harus mengimpor google_dataplex_entry terlebih dahulu.

Untuk mengimpor entri, gunakan perintah berikut:

terraform import google_dataplex_entry.data_product_metadata "projects/DATA_PRODUCT_PROJECT_NUMBER/locations/LOCATION/entryGroups/@dataplex/entries/projects/DATA_PRODUCT_PROJECT_NUMBER/locations/LOCATION/dataProducts/DATA_PRODUCT_ID"

Konfigurasi Terraform:

resource "google_dataplex_entry" "data_product_metadata" {
project        = "DATA_PRODUCT_PROJECT_NUMBER"
location       = "LOCATION"
entry_group_id = "@dataplex"
entry_id       = "projects/DATA_PRODUCT_PROJECT_NUMBER/locations/LOCATION/dataProducts/DATA_PRODUCT_ID"
entry_type     = "projects/655216118709/locations/global/entryTypes/data-product"

aspects {
  aspect_key = "655216118709.global.overview"
  aspect {
    data = jsonencode({
      content = "DOCUMENTATION"
    })
  }
}

provider = google-beta
}

Ganti kode berikut:

  • DATA_PRODUCT_PROJECT_NUMBER: nomor project tempat resource produk data berada
  • LOCATION: region endpoint layanan Knowledge Catalog yang Anda panggil (misalnya, us-central1)
  • DATA_PRODUCT_ID: ID produk data Anda
  • DOCUMENTATION: konten yang ingin Anda lampirkan ke produk data

Untuk mengetahui informasi umum tentang proses impor, lihat dokumentasi impor Terraform.

Membuat dokumentasi otomatis dan contoh kueri menggunakan insight data

Sebelum Anda membuat dokumentasi dan sampel kueri menggunakan Gemini, selesaikan prasyarat berikut:

  1. Aktifkan Gemini for Google Cloud API di project tempat Anda membuat produk data.

  2. Memberikan peran pengguna khusus insight: Minta administrator untuk memberikan peran dan izin berikut pada project produk data kepada identitas Anda:

    • Membuat dan mengelola insight data: Editor Dataplex DataScan (roles/dataplex.dataScanEditor) atau Administrator Dataplex DataScan (roles/dataplex.dataScanAdmin) di project tempat produk data berada
    • Melihat insight yang dihasilkan: Dataplex DataScan DataViewer (roles/dataplex.dataScanDataViewer) di project tempat produk data berada
  3. Mengonfigurasi izin agen layanan lintas project. Jika aset data pokok Anda berada di project Google Cloud yang berbeda dengan project produk data, Anda harus memberikan akses ke aset tersebut kepada agen layanan Knowledge Catalog (P4SA):

    1. Untuk membuat atau mengambil ID agen layanan untuk project produk data Anda, jalankan perintah Google Cloud CLI berikut:

      gcloud beta services identity create --service=dataplex.googleapis.com --project=DATA_PRODUCT_PROJECT_ID
      

      Ganti DATA_PRODUCT_PROJECT_ID dengan Google Cloud project ID tempat produk data Anda berada.

    2. Di setiap project eksternal tempat aset Anda berada, berikan peran berikut kepada agen layanan project produk data:

      • BigQuery Data Editor (roles/bigquery.dataEditor) di tabel dan set data pokok

      • Admin BigQuery Studio (roles/bigquery.studioAdmin) di project aset

Untuk membuat dokumentasi dan contoh kueri untuk produk data Anda menggunakan insight data, selesaikan langkah-langkah berikut:

Konsol

  1. Di panel Tambahkan detail tambahan, pada kolom Buat insight dengan Gemini, lalu klik Buat.

    Tunggu beberapa menit hingga proses pembuatan insight selesai.

  2. Untuk meninjau konten yang dihasilkan, klik Lihat.

  3. Mengevaluasi konten yang dihasilkan:

    • Jika konten sudah akurat, klik Simpan. Tindakan ini akan mengisi editor teks kaya dengan template dokumentasi yang telah ditentukan sebelumnya dan menambahkan contoh kueri ke bagian Insights.

    • Jika konten tidak sesuai harapan, klik Hapus.

  4. Klik Simpan untuk menyelesaikan.

REST

Untuk membuat, mengambil, dan menerapkan dokumentasi serta insight secara otomatis menggunakan API, jalankan serangkaian panggilan DataScans API Knowledge Catalog berikut.

  1. Buat dokumentasi otomatis.

    Untuk memicu pembuatan dokumentasi otomatis, buat pemindaian data jenis DATA_DOCUMENTATION dengan mengirim permintaan POST ke endpoint dataScans:

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -d '{
      "data": {
        "resource": "DATA_PRODUCT_RESOURCE_NAME"
      },
      "executionSpec": {
        "trigger": {
          "oneTime": {
            "ttl_after_scan_completion": "TTL"
          }
        }
      },
      "type": "DATA_DOCUMENTATION",
      "dataDocumentationSpec": {}
    }' \
    "https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataScans?data_scan_id=DATA_SCAN_ID"
    

    Ganti kode berikut:

    • DATA_PRODUCT_RESOURCE_NAME: nama lengkap resource produk data target yang akan dipindai.
    • TTL: durasi dalam detik setelah resource pemindaian harus dihapus secara otomatis (misalnya, 3600 untuk satu jam). Jika tidak ditentukan, nilai defaultnya adalah 24 jam. Nilai maksimum yang diizinkan adalah 365 hari (31536000 detik).
    • PROJECT_ID: ID project Google Cloud Anda
    • LOCATION: region tempat pemindaian data dijalankan
    • DATA_SCAN_ID: ID unik yang Anda berikan untuk pemindaian ini
  2. Ambil dokumentasi yang dihasilkan.

    Setelah tugas pemindaian data selesai, ambil dokumentasi yang dihasilkan dan insight kueri dengan mengirim permintaan GET dengan parameter view=full:

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    "https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataScans/DATA_SCAN_ID?view=full"
    
  3. Simpan kueri yang dihasilkan ke produk data.

    Ekstrak cuplikan SQL yang dihasilkan dari output pemindaian data pada langkah sebelumnya, lalu lampirkan ke entri produk data Anda dengan memperbarui aspek queries melalui permintaan PATCH:

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -d '{
      "aspects": {
        "dataplex-types.global.queries": {
          "aspectType": "projects/dataplex-types/locations/global/aspectTypes/queries",
          "data": {
            "queries": [
              {
                "description": "QUERY_DESCRIPTION",
                "sql": "SQL_STATEMENT",
                "source": "USER"
              }
            ]
          }
        }
      }
    }' \
    "https://dataplex.googleapis.com/v1/projects/CATALOG_PROJECT_ID/locations/CATALOG_LOCATION/entryGroups/@dataplex/entries/projects/DATA_PRODUCT_PROJECT_NUMBER/locations/DATA_PRODUCT_LOCATION/dataProducts/DATA_PRODUCT_ID?updateMask=aspects"
    

    Ganti kode berikut:

    • QUERY_DESCRIPTION: deskripsi yang menjelaskan tujuan kueri contoh yang direkomendasikan

    • SQL_STATEMENT: teks literal dari kueri contoh SQL yang dibuat

    • CATALOG_PROJECT_ID: ID project Google Cloud tempat Anda melakukan panggilan API

    • CATALOG_LOCATION: endpoint regional untuk layanan Knowledge Catalog (misalnya, us-central1)

    • DATA_PRODUCT_PROJECT_NUMBER: nomor project tempat resource produk data dihosting

    • DATA_PRODUCT_LOCATION: lokasi resource produk data Anda

    • DATA_PRODUCT_ID: ID produk data Anda

Langkah berikutnya