Gunakan Dataflow Prime

Dataflow Prime adalah platform pemrosesan data serverless untuk pipeline Apache Beam. Berdasarkan Dataflow, Dataflow Prime menggunakan arsitektur yang dipisahkan oleh status dan komputasi. Dalam kasus berikut, Dataflow Prime dapat meningkatkan efisiensi pipeline:

Dataflow Prime mendukung pipeline batch dan streaming. Secara default, Dataflow Prime menggunakan Dataflow Shuffle dan Dataflow Runner V2 untuk pipeline batch.

Dukungan versi SDK

Dataflow Prime mendukung Apache Beam SDK berikut:

  • Apache Beam Python SDK versi 2.21.0 atau yang lebih baru

  • Apache Beam Java SDK versi 2.30.0 atau yang lebih baru

  • Apache Beam Go SDK versi 2.44.0 atau yang lebih baru

Untuk mendownload paket SDK atau membaca Catatan Rilis, lihat Download Apache Beam.

Fitur Dataflow Prime

Berikut adalah daftar fitur Dataflow Prime yang didukung untuk berbagai jenis pipeline:

  • Penskalaan Otomatis Vertikal (memori). Mendukung pipeline streaming di Python, Java, dan Go.
  • Penyesuaian yang tepat (petunjuk resource). Mendukung pipeline batch di Python dan Java.
  • Visualizer Pekerjaan. Mendukung pipeline batch di Python dan Java.
  • Rekomendasi Pintar. Mendukung pipeline streaming dan batch di Python dan Java.
  • Pipeline Data. Mendukung pipeline streaming dan batch di Python dan Java.

Fitur Job Visualizer, Smart Recommendations, dan Data Pipelines juga didukung untuk tugas non-Dataflow Prime.

Penskalaan Otomatis Vertikal

Fitur ini otomatis menyesuaikan memori yang tersedia ke VM pekerja Dataflow agar sesuai dengan kebutuhan pipeline dan membantu mencegah error kehabisan memori. Di Dataflow Prime, Penskalaan Otomatis Vertikal berfungsi bersama Penskalaan Otomatis Horizontal untuk menskalakan resource secara dinamis.

Untuk informasi selengkapnya, lihat Penskalaan Otomatis Vertikal.

Penyesuaian yang tepat

Fitur ini menggunakan petunjuk resource, yang merupakan fitur Apache Beam. Dengan menggunakan petunjuk resource, Anda dapat menentukan persyaratan resource untuk seluruh pipeline atau langkah tertentu pada pipeline. Fitur ini memungkinkan Anda membuat pekerja yang disesuaikan untuk berbagai langkah pipeline. Penyesuaian yang tepat memungkinkan Anda menentukan resource pipeline untuk memaksimalkan efisiensi, menurunkan biaya operasional, serta menghindari kehabisan memori serta error resource lainnya. Library ini mendukung petunjuk resource memori dan GPU.

Penyesuaian yang tepat memerlukan Apache Beam 2.30.0 atau yang lebih baru.

Untuk informasi selengkapnya, lihat Pengepasan yang tepat.

Visualizer Tugas

Fitur ini memungkinkan Anda melihat performa tugas Dataflow dan mengoptimalkan performa tugas dengan menemukan kode yang tidak efisien, termasuk bottleneck paralelisasi. Di konsol Google Cloud, Anda dapat mengklik tugas Dataflow mana pun di halaman Jobs untuk melihat detail tentang tugas tersebut. Anda juga dapat melihat daftar langkah yang terkait dengan setiap tahap pipeline.

Untuk mengetahui informasi selengkapnya, lihat Detail eksekusi.

Rekomendasi Cerdas

Fitur ini memungkinkan Anda mengoptimalkan dan memecahkan masalah pipeline berdasarkan rekomendasi yang diberikan di tab Diagnostik di halaman detail tugas. Di konsol Google Cloud, Anda dapat mengklik tugas Dataflow mana pun di halaman Jobs untuk melihat detail tentang tugas tersebut.

Untuk mengetahui informasi selengkapnya, lihat Rekomendasi dan diagnostik.

Pipeline Data

Dengan fitur ini, Anda dapat menjadwalkan tugas, mengamati penggunaan resource, melacak tujuan keaktualan data untuk streaming data, dan mengoptimalkan pipeline.

Untuk mengetahui informasi selengkapnya, lihat Bekerja dengan Pipeline Data.

Persyaratan kuota dan batas

Kuota dan batas untuk Dataflow dan Dataflow Prime sama. Untuk mengetahui informasi selengkapnya, lihat Kuota dan batas.

Jika Anda memilih Pipeline Data, ada implikasi tambahan untuk kuota dan region.

Fitur yang tidak didukung

Dataflow Prime tidak mendukung hal berikut:

  • Petunjuk resource untuk transformasi lintas bahasa. Untuk informasi selengkapnya tentang batasan ini, lihat dokumentasi Apache Beam.

  • Menentukan jenis VM tertentu menggunakan flag --worker_machine_type atau --machine_type untuk pipeline Python dan --workerMachineType untuk pipeline Java.

  • Melihat atau menggunakan SSH untuk login ke VM pekerja.

  • Class MapState dan OrderedListState untuk pipeline Java.

  • Jenis jendela kustom.

  • Penjadwalan Resource yang Fleksibel (FlexRS).

  • Menggunakan Kontrol Layanan VPC dengan Penskalaan Otomatis Vertikal. Jika Anda mengaktifkan Dataflow Prime dan meluncurkan tugas baru dalam perimeter Kontrol Layanan VPC, tugas tersebut akan menggunakan Dataflow Prime tanpa Penskalaan Otomatis Vertikal.

  • NVIDIA Multi-Process Service (MPS).

Semua opsi pipeline yang tidak disebutkan secara eksplisit sebelumnya atau dalam tabel perbandingan fitur berfungsi sama untuk Dataflow dan Dataflow Prime.

Sebelum menggunakan Dataflow Prime

Untuk menggunakan Dataflow Prime, Anda dapat menggunakan kembali kode pipeline yang ada dan juga mengaktifkan opsi Dataflow Prime melalui Cloud Shell atau secara terprogram.

Dataflow Prime kompatibel dengan tugas batch yang menggunakan Dataflow Shuffle dan tugas streaming yang menggunakan Streaming Engine. Namun, sebaiknya uji pipeline Anda dengan Dataflow Prime sebelum menggunakannya di lingkungan produksi.

Jika pipeline streaming Anda berjalan dalam tahap produksi, untuk menggunakan Dataflow Prime, lakukan langkah-langkah berikut:

  1. Menghentikan pipeline.

  2. Aktifkan Dataflow Prime.

  3. Jalankan kembali pipeline.

Aktifkan Dataflow Prime

Guna mengaktifkan Dataflow Prime untuk pipeline:

  1. Aktifkan API Penskalaan Otomatis Cloud.

    Mengaktifkan API

    Dataflow Prime menggunakan API Penskalaan Otomatis Cloud untuk menyesuaikan memori secara dinamis.

  2. Aktifkan Prime di opsi pipeline Anda.

    Anda dapat menetapkan opsi pipeline secara terprogram atau dengan menggunakan command line. Untuk versi Apache Beam SDK yang didukung, aktifkan tanda berikut:

Java

--dataflowServiceOptions=enable_prime

Python

Apache Beam Python SDK versi 2.29.0 atau yang lebih baru:

--dataflow_service_options=enable_prime

Apache Beam Python SDK versi 2.21.0 hingga 2.28.0:

--experiments=enable_prime

Go

--dataflow_service_options=enable_prime

Menggunakan Dataflow Prime dengan template

Jika menggunakan template Dataflow, Anda dapat memilih untuk mengaktifkan Dataflow Prime dengan salah satu cara berikut:

  1. Untuk tugas yang diluncurkan dari halaman Create job from template:

    1. Buka halaman Create job from template.

      Buka Buat tugas dari template

    2. Di kolom Additional experiment, masukkan enable_prime.

  2. Untuk tugas yang diluncurkan dari template melalui antarmuka command line, teruskan flag --additional-experiments=enable_prime.

  3. Untuk mengaktifkan Dataflow Prime saat membuat template, tetapkan flag --experiments=enable_prime.

Menggunakan Dataflow Prime di notebook Apache Beam

Jika menggunakan notebook Apache Beam, Anda dapat mengaktifkan Dataflow Prime secara terprogram menggunakan PipelineOptions:

options = pipeline_options.PipelineOptions(
    flags=[],
    dataflow_service_options=['enable_prime'],
)

Untuk mempelajari lebih lanjut cara menyetel opsi Dataflow di notebook, lihat Meluncurkan tugas Dataflow dari pipeline yang dibuat di notebook Anda.

Perbandingan fitur antara Dataflow dan Dataflow Prime

Tabel berikut membandingkan fitur yang tersedia untuk kedua varian Dataflow.

Fitur Dataflow Prime Dataflow
Runner V2 Fitur default tanpa opsi nonaktif untuk tugas batch dan opsional untuk tugas streaming Fitur opsional
Dataflow Shuffle untuk tugas batch Fitur default tanpa opsi untuk dinonaktifkan Fitur default dengan opsi untuk menonaktifkannya
Streaming Engine untuk tugas streaming Fitur opsional untuk pipeline Java dan selalu aktif untuk pipeline Python Fitur opsional untuk pipeline Java dan opsi untuk menonaktifkan pipeline Python
Penskalaan Otomatis Horizontal Fitur default dengan opsi untuk menonaktifkannya Fitur default dengan opsi untuk menonaktifkannya
Penskalaan Otomatis Vertikal Fitur default dengan opsi untuk menonaktifkannya Tidak berlaku
Pengepasan yang tepat Fitur opsional Fitur opsional
Penagihan Penagihan serverless Penagihan standar

Langkah selanjutnya