I/O terkelola Dataflow untuk Apache Kafka

Managed I/O mendukung pembacaan dan penulisan ke Apache Kafka.

Persyaratan

SDK berikut mendukung I/O terkelola untuk Apache Kafka:

  • Apache Beam SDK untuk Java versi 2.58.0 atau yang lebih baru
  • Apache Beam SDK untuk Python versi 2.61.0 atau yang lebih baru

Konfigurasi

I/O Terkelola menggunakan parameter konfigurasi berikut untuk Apache Kafka.

Konfigurasi baca dan tulis Jenis data Deskripsi
bootstrap_servers string Wajib. Daftar server bootstrap Kafka yang dipisahkan koma. Contoh: localhost:9092.
topic string Wajib. Topik Kafka yang akan dibaca atau ditulis.
file_descriptor_path string Jalur ke set deskriptor file buffer protokol. Hanya berlaku jika data_format adalah "PROTO".
data_format string Format pesan. Nilai yang didukung: "AVRO", "JSON", "PROTO", "RAW". Nilai defaultnya adalah "RAW", yang membaca atau menulis byte mentah payload pesan.
message_name string Nama pesan buffer protokol. Wajib jika data_format adalah "PROTO".
schema string

Skema pesan Kafka. Jenis skema yang diharapkan bergantung pada format data:

Untuk pipeline baca, parameter ini diabaikan jika confluent_schema_registry_url ditetapkan.

Konfigurasi baca Jenis data Deskripsi
auto_offset_reset_config string

Menentukan perilaku saat tidak ada offset awal atau offset saat ini tidak ada lagi di server Kafka. Nilai berikut didukung:

  • "earliest": Mereset offset ke offset paling awal.
  • "latest": Reset offset ke offset terbaru.

Nilai defaultnya adalah "latest".

confluent_schema_registry_subject string Subjek registry skema Confluent. Wajib jika confluent_schema_registry_url ditentukan.
confluent_schema_registry_url string URL registry skema Confluent. Jika ditentukan, parameter schema akan diabaikan.
consumer_config_updates map Menetapkan parameter konfigurasi untuk konsumen Kafka. Untuk mengetahui informasi selengkapnya, lihat Konfigurasi konsumen dalam dokumentasi Kafka. Anda dapat menggunakan parameter ini untuk menyesuaikan konsumen Kafka.
max_read_time_seconds int Waktu baca maksimum, dalam detik. Opsi ini menghasilkan PCollection yang dibatasi dan terutama ditujukan untuk pengujian atau skenario non-produksi lainnya.
Menulis konfigurasi Jenis data Deskripsi
producer_config_updates map Menetapkan parameter konfigurasi untuk produser Kafka. Untuk mengetahui informasi selengkapnya, lihat Konfigurasi produser dalam dokumentasi Kafka. Anda dapat menggunakan parameter ini untuk menyesuaikan produser Kafka.

Untuk membaca pesan Avro atau JSON, Anda harus menentukan skema pesan. Untuk menetapkan skema secara langsung, gunakan parameter schema. Untuk memberikan skema melalui Confluent schema registry, tetapkan parameter confluent_schema_registry_url dan confluent_schema_registry_subject.

Untuk membaca atau menulis pesan Protocol Buffer, tentukan skema pesan atau tetapkan parameter file_descriptor_path.

Untuk informasi dan contoh kode selengkapnya, lihat topik berikut: