Knowledge Catalog (sebelumnya Dataplex Universal Catalog) menyediakan template, yang didukung oleh Dataflow, untuk melakukan tugas pemrosesan data umum seperti penyerapan data, pemrosesan, dan pengelolaan siklus proses data. Panduan ini menjelaskan cara mengonfigurasi dan menjalankan template pemrosesan data.
Sebelum memulai
Template Knowledge Catalog didukung oleh Dataflow. Sebelum menggunakan template, aktifkan Dataflow API.
Perhatikan hal berikut:
Semua template mendukung opsi pipeline Dataflow umum.
Knowledge Catalog menggunakan pipeline data untuk menjadwalkan tugas yang ditentukan oleh template.
Anda hanya dapat melihat tugas yang dijadwalkan melalui Knowledge Catalog di konsol Google Cloud di halaman Knowledge Catalog.
Template: Mengonversi data mentah menjadi data yang dikurasi
Template konversi format file Knowledge Catalog mengonversi data dalam aset Cloud Storage Knowledge Catalog, atau daftar entity Knowledge Catalog yang disimpan dalam format CSV atau JSON, ke format data Parquet atau Avro dalam aset Knowledge Catalog lain. Tata letak partisi dipertahankan dalam konversi. Fitur ini juga mendukung kompresi file output.
Parameter template
| Parameter | Deskripsi |
|---|---|
inputAssetOrEntitiesList |
Aset Katalog Pengetahuan atau entitas Katalog Pengetahuan yang
berisi file input. Parameter ini harus mengikuti format:
projects/<name>/locations/<loc>/lakes/<lake-name>/zones/<zone-name>/assets/<asset-name>
atau projects/<name>/locations/<loc>/lakes/<lake-name>/zones/<zone-name>/entities/<entity1-name>,projects/<name>/locations/<loc>/lakes/<lake-name>/zones/<zone-name>/entities/<entity 2 name>... |
outputFileFormat |
Format file output di Cloud Storage. Parameter ini harus
mengikuti format: PARQUET atau AVRO. |
outputAsset |
Nama aset Knowledge Catalog yang berisi bucket Cloud Storage tempat file output akan disimpan. Parameter
ini harus mengikuti format: projects/<name>/locations/<loc>/lakes/<lake-name>/zones/<zone-name>/assets/<asset-name>. Anda dapat menemukan
outputAsset di konsol Google Cloud , di tab
aset Katalog Pengetahuan Details. |
outputFileCompression |
Opsional: Kompresi file output. Nilai default untuk
parameter ini adalah SNAPPY. Nilai lain untuk parameter dapat berupa
UNCOMPRESSED, SNAPPY, GZIP, atau
BZIP2. BZIP2 tidak didukung untuk
file PARQUET. |
writeDisposition |
Opsional: Menentukan tindakan yang terjadi jika file tujuan sudah ada. Nilai default untuk parameter ini adalah SKIP,
yang menandakan untuk memproses hanya file yang tidak ada di
direktori tujuan. Nilai lain untuk parameter dapat berupa
OVERWRITE (menimpa file yang ada) atau FAIL
(tidak memproses apa pun dan menghasilkan error jika setidaknya satu file tujuan
sudah ada). |
updateDataplexMetadata |
Opsional: Apakah akan memperbarui metadata Knowledge Catalog untuk
entitas yang baru dibuat. Nilai default untuk parameter ini adalah
Jika diaktifkan, pipeline akan otomatis menyalin skema dari sumber ke entity Katalog Pengetahuan tujuan, dan Penemuan Katalog Pengetahuan otomatis tidak akan berjalan untuk entity tersebut. Gunakan tanda ini jika skema data sumber (mentah) dikelola oleh Knowledge Catalog. |
Menjalankan template
Konsol
Di konsol Google Cloud , buka halaman Process Knowledge Catalog.
Klik Create task.
Di bagian Convert to Curated Formats, klik Create task.
Pilih lake Knowledge Catalog.
Berikan nama tugas.
Pilih region untuk eksekusi tugas.
Isi parameter yang diperlukan.
Klik Lanjutkan.
gcloud
Di shell atau terminal Anda, jalankan template:
gcloud beta dataflow flex-template run JOB_NAME \ --project=PROJECT_ID \ --region=REGION_NAME \ --template-file-gcs-location=gs://dataflow-templates-REGION_NAME/latest/flex/Dataplex_File_Format_Conversion_Preview \ --parameters \ inputAssetOrEntitiesList=INPUT_ASSET_OR_ENTITIES_LIST,\ outputFileFormat=OUTPUT_FILE_FORMAT,\ outputAsset=OUTPUT_ASSET
Ganti kode berikut:
JOB_NAME: a job name of your choice PROJECT_ID: your template project ID REGION_NAME: region in which to run the job INPUT_ASSET_OR_ENTITIES_LIST: path to your JDBC drivers OUTPUT_FILE_FORMAT: your output file format in Cloud Storage OUTPUT_ASSET: your Knowledge Catalog output asset ID
REST
Kirim permintaan POST HTTP:
POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/REGION_NAME/flexTemplates:launch
{
"launch_parameter": {
"jobName": "JOB_NAME",
"parameters": {
"inputAssetOrEntitiesList": "INPUT_ASSET_OR_ENTITIES_LIST",
"outputFileFormat": "OUTPUT_FILE_FORMAT",
"outputAsset": "OUTPUT_ASSET",
},
"containerSpecGcsPath": "gs://dataflow-templates-REGION_NAME/latest/flex/Dataplex_File_Format_Conversion_Preview",
}
}
Ganti kode berikut:
PROJECT_ID: your template project ID REGION_NAME: region in which to run the job JOB_NAME: a job name of your choice INPUT_ASSET_OR_ENTITIES_LIST: path to your JDBC drivers OUTPUT_FILE_FORMAT: your output file format in Cloud Storage OUTPUT_ASSET: your Knowledge Catalog output asset ID
Template: Mengelompokkan data dari aset BigQuery ke aset Cloud Storage
Template Knowledge Catalog BigQuery to Cloud Storage menyalin data dari aset Knowledge Catalog BigQuery ke aset Knowledge Catalog Cloud Storage dalam tata letak dan format yang kompatibel dengan Knowledge Catalog. Anda dapat menentukan set data BigQuery atau daftar tabel BigQuery yang akan disalin. Untuk fleksibilitas tambahan, template ini memungkinkan penyalinan data yang lebih lama dari tanggal modifikasi yang ditentukan dan memungkinkan penghapusan data secara opsional dari BigQuery setelah penyalinan berhasil.
Saat menyalin tabel berpartisi dari BigQuery ke Cloud Storage:
- Template ini membuat partisi gaya Hive di bucket Cloud Storage.
BigQuery tidak dapat memiliki kunci partisi gaya Hive yang sama dengan kolom yang ada. Anda dapat menggunakan opsi
enforceSamePartitionKeyuntuk membuat kunci partisi baru atau mempertahankan kunci partisi yang sama, tetapi mengganti nama kolom yang ada. - Penemuan Knowledge Catalog mendaftarkan jenis partisi sebagai
stringsaat membuat tabel BigQuery (dan tabel di Dataproc Metastore). Hal ini dapat memengaruhi filter partisi yang ada.
Ada batasan jumlah tabel dan partisi yang dapat diubah dalam satu eksekusi template, yaitu sekitar 300. Jumlah persisnya bergantung pada panjang nama tabel dan faktor lainnya.
Parameter template
| Parameter | Deskripsi |
|---|---|
sourceBigQueryDataset |
Set data BigQuery untuk mengelompokkan data. Parameter ini
harus berisi nama aset Knowledge Catalog dalam format
projects/<name>/locations/<loc>/lakes/<lake-name>/zones/<zone-name>/assets/<asset-name>
atau ID set data BigQuery dalam format
projects/<name>/datasets/<dataset-id>. |
destinationStorageBucketAssetName |
Nama aset Knowledge Catalog untuk bucket Cloud Storage
tempat data akan dikelompokkan. Parameter ini harus mengikuti format
projects/<name>/locations/<loc>/lakes/<lake-name>/zones/<zone-name>/assets/<asset-name>. |
tables |
Opsional: Daftar tabel BigQuery yang dipisahkan koma untuk tingkatan. Jika tidak ada daftar yang diberikan, semua tabel akan dikelompokkan. Tabel harus ditentukan hanya berdasarkan namanya (tanpa awalan project atau set data) dan peka huruf besar/kecil. |
exportDataModifiedBeforeDateTime |
Opsional: Gunakan parameter ini untuk memindahkan data yang lebih lama dari tanggal ini (dan waktu opsional). Untuk tabel BigQuery berpartisi, pindahkan partisi yang terakhir diubah sebelum tanggal/waktu ini. Untuk tabel
yang tidak dipartisi, pindahkan jika tabel terakhir diubah sebelum tanggal/waktu ini. Jika tidak
ditentukan, pindahkan semua tabel/partisi. Tanggal/waktu diuraikan dalam
zona waktu default secara default, tetapi akhiran opsional Z dan
+HH:mm didukung. Parameter ini harus mengikuti format
YYYY-MM-DD atau YYYY-MM-DDTHH:mm:ss atau
YYYY-MM-DDTHH:mm:ss+03:00.
Tanggal/waktu relatif
juga didukung, dan harus mengikuti format
-PnDTnHnMn.nS (harus dimulai dengan -P, yang
menunjukkan waktu di masa lalu).
|
fileFormat |
Opsional: Format file output di Cloud Storage. Nilai
default untuk parameter ini adalah PARQUET. Nilai lain untuk parameter
dapat berupa AVRO. |
fileCompression |
Opsional: Kompresi file output. Nilai default untuk
parameter ini adalah SNAPPY. Nilai lain untuk parameter dapat berupa
UNCOMPRESSED, SNAPPY, GZIP, atau
BZIP2. BZIP2 tidak didukung untuk
file PARQUET. |
deleteSourceData |
Opsional: Apakah akan menghapus data sumber dari BigQuery
setelah ekspor berhasil. Nilai dapat berupa true atau
false. Nilai default untuk parameter ini adalah
false. |
partitionIdRegExp |
Opsional: Hanya proses partisi dengan ID partisi yang cocok dengan ekspresi reguler ini. Jika tidak ada nilai yang diberikan, parameter ini akan ditetapkan secara default ke proses semua. |
writeDisposition |
Opsional: Menentukan tindakan yang terjadi jika file tujuan sudah ada, yang berarti satu atau beberapa tabel/partisi sudah dikelompokkan sebelumnya. Nilai default untuk parameter ini adalah SKIP,
yang menandakan hanya memproses tabel/partisi yang belum
dikategorikan sebelumnya. Nilai lain untuk parameter dapat berupa
OVERWRITE (menimpa file yang ada) atau FAIL
(tidak memproses apa pun dan menghasilkan error jika setidaknya satu file tujuan
sudah ada). |
enforceSamePartitionKey |
Opsional: Apakah akan menerapkan kunci partisi yang sama. Karena batasan BigQuery, kunci partisi (di jalur file) dalam tabel eksternal yang dipartisi tidak dapat memiliki nama yang sama dengan salah satu kolom dalam file. Jika parameter ini benar (yang merupakan nilai default), kunci partisi file target akan ditetapkan ke nama kolom partisi asli dan kolom dalam file akan diganti namanya. Jika false, kunci partisi akan diganti namanya. Misalnya, jika tabel asli dipartisi pada kolom bernama
Jika |
updateDataplexMetadata |
Opsional: Apakah akan memperbarui metadata Knowledge Catalog untuk
entitas yang baru dibuat. Nilai default untuk parameter ini adalah
Jika diaktifkan, pipeline akan otomatis menyalin skema dari sumber ke entity Dataplex tujuan, dan Penemuan Katalog Pengetahuan otomatis tidak akan berjalan untuk entity tersebut. Gunakan tanda ini jika Anda mengelola skema tabel BigQuery sumber. |
Menjalankan template
Konsol
Di konsol Google Cloud , buka halaman Process Knowledge Catalog.
Klik Create Task.
Di bagian Tier from BQ to GCS Assets, klik Create task.
Pilih lake Knowledge Catalog.
Berikan nama tugas.
Pilih region untuk eksekusi tugas.
Isi parameter yang diperlukan.
Klik Lanjutkan.
gcloud
Di shell atau terminal Anda, jalankan template:
gcloud beta dataflow flex-template run JOB_NAME \ --project=PROJECT_ID \ --region=REGION_NAME \ --template-file-gcs-location=gs://dataflow-templates-REGION_NAME/latest/flex/Dataplex_BigQuery_to_GCS_Preview \ --parameters \ sourceBigQueryDataset=SOURCE_ASSET_NAME_OR_DATASET_ID,\ destinationStorageBucketAssetName=DESTINATION_ASSET_NAME
Ganti kode berikut:
JOB_NAME: a job name of your choice PROJECT_ID: your template project ID REGION_NAME: region in which to run the job SOURCE_ASSET_NAME_OR_DATASET_ID: your Knowledge Catalog asset name for the source BigQuery dataset, or the dataset ID DESTINATION_ASSET_NAME: your Knowledge Catalog asset name for the destination Cloud Storage bucket
REST
Kirim permintaan POST HTTP:
POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/REGION_NAME/flexTemplates:launch
{
"launch_parameter": {
"jobName": "JOB_NAME",
"parameters": {
"sourceBigQueryDataset": "SOURCE_ASSET_NAME_OR_DATASET_ID",
"destinationStorageBucketAssetName": "DESTINATION_ASSET_NAME",
},
"containerSpecGcsPath": "gs://dataflow-templates-REGION_NAME/latest/flex/Dataplex_BigQuery_to_GCS_Preview",
}
}
Ganti kode berikut:
PROJECT_ID: your template project ID REGION_NAME: region in which to run the job JOB_NAME: a job name of your choice SOURCE_ASSET_NAME_OR_DATASET_ID: your Knowledge Catalog asset name for the source BigQuery dataset, or the dataset ID DESTINATION_ASSET_NAME: your Knowledge Catalog asset name for the destination Cloud Storage bucket REGION_NAME: region in which to run the job
Menjadwalkan template Dataflow kustom atau yang disediakan Google Cloud
Knowledge Catalog memungkinkan Anda menjadwalkan dan memantau template Dataflow yang disediakan oleh Google Cloudatau template Dataflow kustom Anda di konsol.
Jadwal
Konsol
Di konsol Google Cloud , buka halaman Process Knowledge Catalog.
Klik Create Task.
Di bagian Buat pipeline Dataflow, klik Buat pipeline Dataflow.
Pilih lake Knowledge Catalog.
Berikan nama tugas.
Pilih region tempat tugas akan dijalankan.
Pilih template Dataflow.
Isi parameter yang diperlukan.
Klik Lanjutkan.
Memantau
Konsol
Di konsol Google Cloud , buka halaman Process Knowledge Catalog.
Klik Pipeline Dataflow.
Filter menurut nama lake atau pipeline.