Template BigQuery Export ke Parquet (melalui Storage API)

Template BigQuery Export ke Parquet adalah pipeline batch yang membaca data dari tabel BigQuery dan menulisnya ke bucket Cloud Storage dalam format Parquet. Template ini menggunakan BigQuery Storage API untuk mengekspor data.

Persyaratan pipeline

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

Parameter template

Parameter Deskripsi
tableRef Lokasi tabel input BigQuery. Misalnya, <my-project>:<my-dataset>.<my-table>.
bucket Folder Cloud Storage tempat menulis file Parquet. Misalnya, gs://mybucket/exports.
numShards (Opsional) Jumlah shard file output. Nilai default adalah 1.
fields (Opsional) Daftar kolom yang dipisahkan koma yang dapat dipilih dari tabel BigQuery input.

Menjalankan template

Konsol

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

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

  5. Dari menu drop-down Dataflow template, pilih the BigQuery export to Parquet (via Storage API) template.
  6. Di kolom parameter yang disediakan, masukkan parameter value Anda.
  7. Klik Run job.

gcloud

Di shell atau terminal Anda, jalankan template:

gcloud dataflow flex-template run JOB_NAME \
    --project=PROJECT_ID \
    --template-file-gcs-location=gs://dataflow-templates-REGION_NAME/VERSION/flex/BigQuery_to_Parquet \
    --region=REGION_NAME \
    --parameters \
tableRef=BIGQUERY_TABLE,\
bucket=OUTPUT_DIRECTORY,\
numShards=NUM_SHARDS,\
fields=FIELDS

Ganti kode berikut:

  • PROJECT_ID: ID project Google Cloud tempat Anda ingin menjalankan tugas Dataflow
  • JOB_NAME: nama pekerjaan 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
  • BIGQUERY_TABLE: nama tabel BigQuery Anda
  • OUTPUT_DIRECTORY: folder Cloud Storage untuk file output
  • NUM_SHARDS: jumlah shard file output yang diinginkan
  • FIELDS: daftar kolom yang dipisahkan koma untuk dipilih dari tabel BigQuery input

API

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

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/flexTemplates:launch
{
   "launch_parameter": {
      "jobName": "JOB_NAME",
      "parameters": {
          "tableRef": "BIGQUERY_TABLE",
          "bucket": "OUTPUT_DIRECTORY",
          "numShards": "NUM_SHARDS",
          "fields": "FIELDS"
      },
      "containerSpecGcsPath": "gs://dataflow-templates-LOCATION/VERSION/flex/BigQuery_to_Parquet",
   }
}

Ganti kode berikut:

  • PROJECT_ID: ID project Google Cloud tempat Anda ingin menjalankan tugas Dataflow
  • JOB_NAME: nama pekerjaan 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
  • BIGQUERY_TABLE: nama tabel BigQuery Anda
  • OUTPUT_DIRECTORY: folder Cloud Storage untuk file output
  • NUM_SHARDS: jumlah shard file output yang diinginkan
  • FIELDS: daftar kolom yang dipisahkan koma untuk dipilih dari tabel BigQuery input

Langkah selanjutnya