Dataplex menyediakan template, yang didukung oleh Dataflow, untuk melakukan tugas pemrosesan data umum seperti penyerapan, pemrosesan, dan pengelolaan siklus proses data. Panduan ini menjelaskan cara mengonfigurasi dan menjalankan template pemrosesan data.
Sebelum memulai
Template Dataplex didukung oleh Dataflow. Sebelum menggunakan template, aktifkan Dataflow API.
Perhatikan hal berikut:
Semua template mendukung opsi pipeline Dataflow umum.
Dataplex menggunakan pipeline data untuk menjadwalkan tugas yang ditentukan oleh template.
Anda hanya dapat melihat tugas yang Anda jadwalkan melalui Dataplex di halaman Dataplex konsol Google Cloud.
Template: Mengonversi data mentah menjadi data yang diseleksi
Template konversi format file Dataplex mengonversi data di aset Cloud Storage Dataplex, atau daftar entity Dataplex yang disimpan dalam format CSV atau JSON, ke data format Parquet atau Avro di aset Dataplex lain. Tata letak partisi dipertahankan dalam konversi. File ini juga mendukung kompresi file output.
Parameter template
Parameter | Deskripsi |
---|---|
inputAssetOrEntitiesList |
Aset Dataplex atau entity Dataplex 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 Dataplex 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 Details aset Dataplex. |
outputFileCompression |
Opsional: Kompresi file output. Nilai default untuk parameter
ini adalah SNAPPY . Nilai lain untuk parameter ini 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 hanya memproses file yang tidak ada di
direktori tujuan. Nilai lain untuk parameter ini dapat berupa
OVERWRITE (menulis ulang 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 Dataplex untuk entity yang baru dibuat. Nilai default untuk parameter ini adalah
Jika diaktifkan, pipeline akan otomatis menyalin skema dari entitas Dataplex sumber ke entitas Dataplex tujuan, dan Penemuan Dataplex otomatis tidak akan berjalan untuk entitas tersebut. Gunakan tanda ini jika skema data sumber (mentah) dikelola oleh Dataplex. |
Menjalankan template
Konsol
Di konsol Google Cloud, buka halaman Dataplex.
Buka tampilan Proses.
Klik Create task.
Di bagian Konversi ke Format Terpilih, klik Buat tugas.
Pilih data lake Dataplex.
Berikan nama tugas.
Pilih region untuk eksekusi tugas.
Isi parameter yang diperlukan.
Klik Lanjutkan.
gcloud
Di shell atau terminal, 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 Dataplex 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 Dataplex output asset ID
Template: Menata data dari aset BigQuery ke aset Cloud Storage
Template BigQuery Dataplex ke Cloud Storage menyalin data dari aset BigQuery Dataplex ke aset Cloud Storage Dataplex dalam tata letak dan format yang kompatibel dengan Dataplex. Anda dapat menentukan set data BigQuery atau daftar tabel BigQuery yang akan disalin. Untuk fleksibilitas tambahan, template 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 yang dipartisi dari BigQuery ke Cloud Storage:
- Template ini membuat partisi bergaya Hive di bucket Cloud Storage.
BigQuery tidak dapat memiliki kunci partisi bergaya Hive
yang sama dengan kolom yang ada. Anda dapat menggunakan opsi
enforceSamePartitionKey
untuk membuat kunci partisi baru atau mempertahankan kunci partisi yang sama, tetapi mengganti nama kolom yang ada. - Dataplex Discovery mendaftarkan jenis partisi
sebagai
string
saat membuat tabel BigQuery (dan tabel di Metastore Dataproc). Hal ini dapat memengaruhi filter partisi yang ada.
Ada batasan jumlah tabel dan partisi yang dapat ditransformasikan dalam satu operasi template, yaitu sekitar 300. Jumlah pastinya bergantung pada panjang nama tabel dan faktor lainnya.
Parameter template
Parameter | Deskripsi |
---|---|
sourceBigQueryDataset |
Set data BigQuery tempat data tingkat berasal. Parameter ini
harus berisi nama aset Dataplex 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 Dataplex 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 di-tier. Jika tidak ada daftar yang diberikan, semua tabel akan diberi tingkat. Tabel harus ditentukan hanya berdasarkan namanya (tanpa awalan project/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 yang dipartisi, pindahkan
partisi yang terakhir diubah sebelum tanggal/waktu ini. Untuk tabel yang tidak dipartisi, pindah 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 ini 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. Nilainya dapat berupa true atau
false . Nilai default untuk parameter ini adalah
false . |
partitionIdRegExp |
Opsional: Memproses partisi dengan ID partisi yang cocok dengan ekspresi reguler ini saja. 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 untuk hanya memproses tabel/partisi yang belum
dikelompokkan sebelumnya. Nilai lain untuk parameter ini dapat berupa
OVERWRITE (menulis ulang 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 adanya batasan BigQuery, kunci partisi (di jalur file) dalam tabel eksternal yang dipartisi tidak boleh memiliki nama yang sama dengan salah satu kolom dalam file. Jika parameter ini bernilai benar (yang merupakan nilai default), kunci partisi file target akan ditetapkan ke nama kolom partisi asli dan kolom dalam file akan diganti namanya. Jika salah (false), kunci partisi akan diganti namanya. Misalnya, jika tabel asli dipartisi pada kolom bernama
Jika |
updateDataplexMetadata |
Opsional: Apakah akan memperbarui metadata Dataplex untuk entity yang baru dibuat. Nilai default untuk parameter ini adalah
Jika diaktifkan, pipeline akan otomatis menyalin skema dari entitas Dataplex sumber ke entitas Dataplex tujuan, dan Penemuan Dataplex otomatis tidak akan berjalan untuk entitas tersebut. Gunakan tanda ini jika Anda mengelola skema tabel BigQuery sumber. |
Menjalankan template
Konsol
Di konsol Google Cloud, buka halaman Dataplex.
Buka tampilan Proses.
Klik Create Task.
Di bagian Tier from BQ to GCS Assets, klik Create task.
Pilih data lake Dataplex.
Berikan nama tugas.
Pilih region untuk eksekusi tugas.
Isi parameter yang diperlukan.
Klik Lanjutkan.
gcloud
Di shell atau terminal, 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 Dataplex asset name for the source BigQuery dataset, or the dataset ID DESTINATION_ASSET_NAME: your Dataplex 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 Dataplex asset name for the source BigQuery dataset, or the dataset ID DESTINATION_ASSET_NAME: your Dataplex 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 lainnya
Dataplex memungkinkan Anda menjadwalkan dan memantau salah satu template Dataflow yang disediakan Google Cloud atau template Dataflow kustom di konsol.
Jadwal
Konsol
Di konsol Google Cloud, buka halaman Dataplex.
Buka tampilan Proses.
Klik Create Task.
Di bagian Buat pipeline Dataflow, klik Buat pipeline Dataflow.
Pilih data lake Dataplex.
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 Dataplex.
Buka tampilan Proses.
Klik Pipeline Dataflow.
Filter menurut nama danau atau pipeline.