Template Cloud Storage Parquet ke Bigtable

Template Cloud Storage Parquet to Bigtable adalah pipeline yang membaca data dari file Parquet di bucket Cloud Storage dan menulis data ke tabel Bigtable. Anda dapat menggunakan template untuk menyalin data dari Cloud Storage ke Bigtable.

Persyaratan pipeline

  • Tabel Bigtable harus ada dan memiliki grup kolom yang sama seperti yang diekspor dalam file Parquet.
  • File Parquet input harus ada di bucket Cloud Storage sebelum menjalankan pipeline.
  • Bigtable mengharapkan skema tertentu dari file Parquet input.

Parameter template

Parameter yang diperlukan

  • bigtableProjectId: ID project Google Cloud yang terkait dengan instance Bigtable.
  • bigtableInstanceId: ID instance Cloud Bigtable yang berisi tabel.
  • bigtableTableId: ID tabel Bigtable yang akan diimpor.
  • inputFilePattern: Jalur Cloud Storage dengan file yang berisi data. Contoh, gs://your-bucket/your-files/*.parquet.

Parameter opsional

  • splitLargeRows: Flag untuk mengaktifkan pemisahan baris besar menjadi beberapa permintaan MutateRows. Perhatikan bahwa saat baris besar dibagi di antara beberapa panggilan API, pembaruan pada baris tidak bersifat atomik.

Menjalankan template

Konsol

  1. Buka halaman Dataflow Create job from template.
  2. Buka Membuat tugas dari template
  3. Di kolom Nama tugas, masukkan nama tugas yang unik.
  4. Opsional: Untuk Endpoint regional, pilih nilai dari menu drop-down. Region default-nya adalah us-central1.

    Untuk mengetahui daftar region tempat Anda dapat menjalankan tugas Dataflow, lihat Lokasi Dataflow.

  5. Dari menu drop-down Template Dataflow, pilih the Parquet Files on Cloud Storage to Cloud Bigtable template.
  6. Di kolom parameter yang disediakan, masukkan nilai parameter Anda.
  7. Klik Run job.

gcloud

Di shell atau terminal Anda, jalankan template:

gcloud dataflow jobs run JOB_NAME \
    --gcs-location gs://dataflow-templates-REGION_NAME/VERSION/GCS_Parquet_to_Cloud_Bigtable \
    --region REGION_NAME \
    --parameters \
bigtableProjectId=BIGTABLE_PROJECT_ID,\
bigtableInstanceId=INSTANCE_ID,\
bigtableTableId=TABLE_ID,\
inputFilePattern=INPUT_FILE_PATTERN

Ganti kode berikut:

  • JOB_NAME: nama tugas unik pilihan Anda
  • VERSION: versi template yang ingin Anda gunakan

    Anda dapat menggunakan nilai berikut:

  • REGION_NAME: region tempat Anda ingin men-deploy tugas Dataflow—misalnya, us-central1
  • BIGTABLE_PROJECT_ID: ID project Google Cloud instance Bigtable yang ingin Anda baca datanya
  • INSTANCE_ID: ID instance Bigtable yang berisi tabel
  • TABLE_ID: ID tabel Bigtable yang akan diekspor
  • INPUT_FILE_PATTERN: pola jalur Cloud Storage tempat data berada, misalnya, gs://mybucket/somefolder/prefix*

API

Untuk menjalankan template menggunakan REST API, kirim permintaan HTTP POST. Untuk mengetahui informasi selengkapnya tentang API dan cakupan otorisasinya, lihat projects.templates.launch.

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/templates:launch?gcsPath=gs://dataflow-templates-LOCATION/VERSION/GCS_Parquet_to_Cloud_Bigtable
{
   "jobName": "JOB_NAME",
   "parameters": {
       "bigtableProjectId": "BIGTABLE_PROJECT_ID",
       "bigtableInstanceId": "INSTANCE_ID",
       "bigtableTableId": "TABLE_ID",
       "inputFilePattern": "INPUT_FILE_PATTERN",
   },
   "environment": { "zone": "us-central1-f" }
}

Ganti kode berikut:

  • PROJECT_ID: ID Google Cloud project tempat Anda ingin menjalankan tugas Dataflow
  • JOB_NAME: nama tugas unik pilihan Anda
  • VERSION: versi template yang ingin Anda gunakan

    Anda dapat menggunakan nilai berikut:

  • LOCATION: region tempat Anda ingin men-deploy tugas Dataflow—misalnya, us-central1
  • BIGTABLE_PROJECT_ID: ID project Google Cloud instance Bigtable yang ingin Anda baca datanya
  • INSTANCE_ID: ID instance Bigtable yang berisi tabel
  • TABLE_ID: ID tabel Bigtable yang akan diekspor
  • INPUT_FILE_PATTERN: pola jalur Cloud Storage tempat data berada, misalnya, gs://mybucket/somefolder/prefix*

Langkah berikutnya