Template Bigtable ke Parquet Cloud Storage

Template Bigtable ke Cloud Storage Parquet adalah pipeline yang membaca data dari tabel Bigtable dan menuliskannya ke bucket Cloud Storage dalam format Parquet. Anda dapat menggunakan template untuk memindahkan data dari Bigtable ke Cloud Storage.

Persyaratan pipeline

  • Tabel Bigtable harus ada.
  • Bucket Cloud Storage output harus ada sebelum menjalankan pipeline.

Parameter template

Parameter yang diperlukan

  • bigtableProjectId: ID project Google Cloud yang berisi instance Cloud Bigtable yang ingin Anda baca datanya.
  • bigtableInstanceId: ID instance Cloud Bigtable yang berisi tabel.
  • bigtableTableId: ID tabel Cloud Bigtable yang akan diekspor.
  • outputDirectory: Awalan jalur dan nama file untuk menulis file output. Harus diakhiri dengan garis miring. Pemformatan DateTime digunakan untuk mengurai jalur direktori untuk pemformat tanggal dan waktu. Contoh: gs://your-bucket/your-path.
  • filenamePrefix: Awalan nama file Parquet. Contoh, table1-. Default: part.

Parameter opsional

  • numShards: Jumlah maksimum shard output yang dihasilkan saat menulis. Jumlah shard yang lebih tinggi berarti throughput yang lebih tinggi untuk menulis ke Cloud Storage, tetapi berpotensi biaya agregasi data yang lebih tinggi di seluruh shard saat memproses file Cloud Storage output. Nilai default ditentukan oleh Dataflow.
  • bigtableAppProfileId: ID profil aplikasi Bigtable yang akan digunakan untuk ekspor. Jika Anda tidak menentukan profil aplikasi, Bigtable akan menggunakan profil aplikasi default instance: https://cloud.google.com/bigtable/docs/app-profiles#default-app-profile.

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 Cloud Bigtable to Parquet Files on Cloud Storage 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/Cloud_Bigtable_to_GCS_Parquet \
    --region REGION_NAME \
    --parameters \
bigtableProjectId=BIGTABLE_PROJECT_ID,\
bigtableInstanceId=INSTANCE_ID,\
bigtableTableId=TABLE_ID,\
outputDirectory=OUTPUT_DIRECTORY,\
filenamePrefix=FILENAME_PREFIX,\
numShards=NUM_SHARDS

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
  • OUTPUT_DIRECTORY: jalur Cloud Storage tempat data ditulis, misalnya, gs://mybucket/somefolder
  • FILENAME_PREFIX: awalan nama file Parquet, misalnya, output-
  • NUM_SHARDS: jumlah file Parquet yang akan dihasilkan, misalnya, 1

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/Cloud_Bigtable_to_GCS_Parquet
{
   "jobName": "JOB_NAME",
   "parameters": {
       "bigtableProjectId": "BIGTABLE_PROJECT_ID",
       "bigtableInstanceId": "INSTANCE_ID",
       "bigtableTableId": "TABLE_ID",
       "outputDirectory": "OUTPUT_DIRECTORY",
       "filenamePrefix": "FILENAME_PREFIX",
       "numShards": "NUM_SHARDS"
   },
   "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
  • OUTPUT_DIRECTORY: jalur Cloud Storage tempat data ditulis, misalnya, gs://mybucket/somefolder
  • FILENAME_PREFIX: awalan nama file Parquet, misalnya, output-
  • NUM_SHARDS: jumlah file Parquet yang akan dihasilkan, misalnya, 1

Langkah berikutnya