Region Dataflow

Region Dataflow menyimpan dan menangani metadata tentang tugas Dataflow serta men-deploy dan mengontrol pekerja Dataflow Anda.

Nama region mengikuti konvensi standar berdasarkan nama region Compute Engine. Misalnya, nama untuk wilayah AS Tengah adalah us-central1.

Fitur ini tersedia di semua region tempat Dataflow didukung. Untuk melihat lokasi yang tersedia, baca Lokasi Dataflow.

Panduan untuk memilih wilayah

Penentuan region dalam tugas Dataflow bersifat wajib.

Keamanan dan kepatuhan

Anda mungkin perlu membatasi pemrosesan tugas Dataflow ke region geografis tertentu untuk mendukung kebutuhan keamanan dan kepatuhan project Anda.

Lokalitas data

Anda dapat meminimalkan latensi jaringan dan biaya transportasi jaringan dengan menjalankan tugas Dataflow dari region yang sama dengan sumber, sink, lokasi file staging, dan lokasi file sementaranya. Jika Anda menggunakan sumber, sink, lokasi file staging, atau lokasi file sementara yang berada di luar region tugas, data Anda mungkin dikirim ke seluruh region.

Dalam menjalankan pipeline, data pengguna hanya ditangani oleh kumpulan pekerja Dataflow dan perpindahan data dibatasi pada jalur jaringan yang menghubungkan pekerja Dataflow dalam kumpulan tersebut.

Meskipun data pengguna ditangani secara ketat oleh pekerja Dataflow di region geografis yang ditetapkan, pesan log pipeline disimpan di Cloud Logging, yang memiliki satu lokasi global di Google Cloud.

Jika memerlukan kontrol lebih besar atas lokasi pesan log pipeline, Anda dapat melakukan hal berikut:

  1. Buat filter pengecualian untuk sink router log _Default agar log Dataflow tidak diekspor ke bucket log _Default.
  2. Buat bucket log di region pilihan Anda.
  3. Konfigurasikan sink router log baru yang mengekspor log Dataflow ke bucket log baru.

Untuk mempelajari lebih lanjut cara mengonfigurasi logging, lihat Ringkasan pemilihan rute dan penyimpanan dan Ringkasan pemilihan rute log.

Catatan tentang sumber tugas Dataflow umum:

  • Saat menggunakan bucket Cloud Storage sebagai sumber, sebaiknya lakukan operasi baca di region yang sama dengan bucket.
  • Saat dipublikasikan ke endpoint Pub/Sub global, topik Pub/Sub akan disimpan di region Google Cloud terdekat. Namun, Anda dapat mengubah kebijakan penyimpanan topik ke region atau kumpulan region tertentu. Demikian pula, topik Pub/Sub Lite hanya mendukung penyimpanan zona.

Ketahanan dan pemisahan geografis

Sebaiknya Anda mengisolasi operasi Dataflow normal dari gangguan yang dapat terjadi di wilayah geografis lain. Atau, Anda mungkin perlu merencanakan lokasi alternatif untuk kelangsungan bisnis jika terjadi bencana di seluruh wilayah.

Dalam rencana pemulihan dari bencana dan kelangsungan bisnis, sebaiknya sertakan detail untuk sumber dan sink yang digunakan dengan tugas Dataflow. Tim penjualan Google Cloud dapat membantu memenuhi persyaratan Anda.

Penempatan regional

Secara default, region yang Anda pilih mengonfigurasi kumpulan pekerja Dataflow untuk memanfaatkan semua zona yang tersedia dalam region tersebut. Pemilihan zona dihitung untuk setiap pekerja pada waktu pembuatannya, yang mengoptimalkan akuisisi resource dan pemanfaatan reservasi yang tidak digunakan.

Penempatan regional menawarkan manfaat seperti:

  • Peningkatan ketersediaan resource: Tugas Dataflow lebih tahan terhadap error ketersediaan resource zona, karena pekerja dapat terus dibuat di zona lain dengan ketersediaan yang tersisa.
  • Peningkatan keandalan: Jika terjadi kegagalan zona, tugas Dataflow dapat terus berjalan, karena pekerja dibuat ulang di zona lain.

Batasan berikut berlaku:

  • Penempatan regional hanya didukung untuk tugas yang menggunakan Streaming Engine atau Dataflow Shuffle. Tugas yang tidak diikutsertakan dalam Streaming Engine atau Dataflow Shuffle tidak dapat menggunakan penempatan regional.
  • Penempatan regional hanya berlaku untuk VM, dan tidak berlaku untuk resource terkait Streaming Engine dan Dataflow Shuffle.
  • VM tidak direplikasi di beberapa zona. Jika VM menjadi tidak tersedia, misalnya, item pekerjaannya akan dianggap hilang dan diproses ulang oleh VM lain.
  • Jika terjadi kehabisan stok untuk seluruh region, layanan Dataflow tidak dapat membuat VM lagi.

Penempatan zona otomatis

Untuk tugas yang tidak didukung untuk penempatan regional, zona terbaik dalam region tersebut akan otomatis dipilih, berdasarkan kapasitas zona yang tersedia pada saat permintaan pembuatan tugas. Pemilihan zona otomatis membantu memastikan pekerja tugas berjalan di zona terbaik untuk tugas Anda.

Karena tugas dikonfigurasi untuk dijalankan di satu zona, operasi mungkin gagal dengan error ketersediaan resource zona jika resource Compute Engine yang memadai tidak tersedia.

Tentukan wilayah

Untuk menentukan wilayah bagi tugas Anda, tetapkan opsi --region ke salah satu region yang didukung. Opsi --region menggantikan region default yang ditetapkan di server metadata, klien lokal, atau variabel lingkungan.

Antarmuka command line Dataflow juga mendukung opsi --region untuk menentukan region.

Mengganti region atau zona pekerja

Secara default, saat Anda mengirimkan tugas dengan opsi --region, pekerja akan otomatis ditetapkan ke zona di seluruh wilayah atau satu zona terbaik dalam wilayah tersebut, bergantung pada jenis pekerjaannya.

Jika ingin memastikan bahwa pekerja untuk tugas Dataflow berjalan secara ketat di zona tertentu, Anda dapat menentukan zona menggunakan opsi pipeline berikut. Pola penggunaan ini tidak umum untuk tugas Dataflow.

Java

--workerZone

Python

--worker_zone

Go

--worker_zone

Untuk kasus lainnya, sebaiknya jangan mengganti lokasi pekerja. Tabel skenario umum berisi rekomendasi penggunaan untuk situasi ini.

Karena tugas dikonfigurasi untuk dijalankan di satu zona, operasi mungkin gagal dengan error ketersediaan resource zona jika resource Compute Engine yang memadai tidak tersedia.

Anda dapat menjalankan perintah gcloud compute regions list untuk melihat listingan region dan zona yang tersedia untuk deployment pekerja.

Skenario umum

Tabel berikut berisi rekomendasi penggunaan untuk skenario umum.

Skenario Rekomendasi
Saya ingin menggunakan region yang didukung dan tidak memiliki preferensi zona di dalam region tersebut. Dalam hal ini, zona terbaik akan otomatis dipilih berdasarkan kapasitas yang tersedia. Gunakan --region untuk menentukan wilayah tugas. Hal ini memastikan bahwa Dataflow mengelola tugas dan memproses data dalam region yang ditentukan.
Saya memerlukan pemrosesan pekerja di zona tertentu dalam suatu region. Tentukan --region dan --workerZone atau --worker_zone.

Gunakan --region untuk menentukan wilayah tugas. Gunakan --workerZone atau --worker_zone untuk menentukan zona tertentu dalam region tersebut.