File Pub/Sub ke Avro pada template Cloud Storage adalah pipeline streaming yang membaca data dari topik Pub/Sub dan menulis file Avro ke dalam bucket Cloud Storage yang ditentukan.
Persyaratan pipeline
- Topik Pub/Sub input harus ada sebelum eksekusi pipeline.
Parameter template
Parameter | Deskripsi |
---|---|
inputTopic |
Topik Pub/Sub untuk berlangganan agar pesan dapat dibaca. Nama topik harus dalam format projects/<project-id>/topics/<topic-name> . |
outputDirectory |
Direktori output tempat file Avro output diarsipkan. Harus berisi / di bagian akhir.
Contoh: gs://example-bucket/example-directory/ . |
avroTempDirectory |
Direktori untuk file Avro sementara. Harus berisi / di bagian akhir. Contoh:
gs://example-bucket/example-directory/ . |
outputFilenamePrefix |
(Opsional) Awalan nama file output untuk file Avro. |
outputFilenameSuffix |
(Opsional) Akhiran nama file output untuk file Avro. |
outputShardTemplate |
(Opsional) Template shard dari file output. Ini ditetapkan sebagai urutan berulang dari
huruf S atau N . Misalnya, SSS-NNN . Keduanya diganti dengan nomor shard atau jumlah total shard. Jika parameter ini tidak ditentukan, format template default adalah W-P-SS-of-NN . |
Menjalankan template
Konsol
- Buka halaman Create job from template Dataflow. Buka Buat tugas dari template
- Di kolom Job name, masukkan nama pekerjaan yang unik.
- 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.
- Dari menu drop-down Dataflow template, pilih the Pub/Sub to Avro Files on Cloud Storage template.
- Di kolom parameter yang disediakan, masukkan parameter value Anda.
- 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_PubSub_to_Avro \ --region REGION_NAME \ --staging-location STAGING_LOCATION \ --parameters \ inputTopic=projects/PROJECT_ID/topics/TOPIC_NAME,\ outputDirectory=gs://BUCKET_NAME/output/,\ outputFilenamePrefix=FILENAME_PREFIX,\ outputFilenameSuffix=FILENAME_SUFFIX,\ outputShardTemplate=SHARD_TEMPLATE,\ avroTempDirectory=gs://BUCKET_NAME/temp/
Ganti kode berikut:
JOB_NAME
: nama pekerjaan unik pilihan AndaREGION_NAME
: region tempat Anda ingin men-deploy tugas Dataflow, misalnyaus-central1
VERSION
: versi template yang ingin Anda gunakanAnda dapat menggunakan nilai berikut:
latest
untuk menggunakan versi terbaru template, yang tersedia di folder induk tidak bertanggal di bucket— gs://dataflow-templates-REGION_NAME/latest/- nama versi, seperti
2023-09-12-00_RC00
, untuk menggunakan versi template tertentu, yang dapat ditemukan bertingkat di folder induk bertanggal masing-masing dalam bucket— gs://dataflow-templates-REGION_NAME/
STAGING_LOCATION
: lokasi untuk staging file lokal (misalnya,gs://your-bucket/staging
)TOPIC_NAME
: nama topik Pub/SubBUCKET_NAME
: nama bucket Cloud Storage AndaFILENAME_PREFIX
: awalan nama file output yang diinginkanFILENAME_SUFFIX
: akhiran nama file output yang diinginkanSHARD_TEMPLATE
: template shard output pilihan
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/templates:launch?gcsPath=gs://dataflow-templates-LOCATION/VERSION/Cloud_PubSub_to_Avro { "jobName": "JOB_NAME", "environment": { "ipConfiguration": "WORKER_IP_UNSPECIFIED", "additionalExperiments": [] }, "parameters": { "inputTopic": "projects/PROJECT_ID/topics/TOPIC_NAME", "outputDirectory": "gs://BUCKET_NAME/output/", "avroTempDirectory": "gs://BUCKET_NAME/temp/", "outputFilenamePrefix": "FILENAME_PREFIX", "outputFilenameSuffix": "FILENAME_SUFFIX", "outputShardTemplate": "SHARD_TEMPLATE" } }
Ganti kode berikut:
PROJECT_ID
: ID project Google Cloud tempat Anda ingin menjalankan tugas DataflowJOB_NAME
: nama pekerjaan unik pilihan AndaLOCATION
: region tempat Anda ingin men-deploy tugas Dataflow, misalnyaus-central1
VERSION
: versi template yang ingin Anda gunakanAnda dapat menggunakan nilai berikut:
latest
untuk menggunakan versi terbaru template, yang tersedia di folder induk tidak bertanggal di bucket— gs://dataflow-templates-REGION_NAME/latest/- nama versi, seperti
2023-09-12-00_RC00
, untuk menggunakan versi template tertentu, yang dapat ditemukan bertingkat di folder induk bertanggal masing-masing dalam bucket— gs://dataflow-templates-REGION_NAME/
STAGING_LOCATION
: lokasi untuk staging file lokal (misalnya,gs://your-bucket/staging
)TOPIC_NAME
: nama topik Pub/SubBUCKET_NAME
: nama bucket Cloud Storage AndaFILENAME_PREFIX
: awalan nama file output yang diinginkanFILENAME_SUFFIX
: akhiran nama file output yang diinginkanSHARD_TEMPLATE
: template shard output pilihan
Langkah selanjutnya
- Pelajari Template Dataflow.
- Lihat daftar template yang disediakan Google.