I/O gestita da Dataflow per Apache Kafka

I/O gestita supporta la lettura e la scrittura in Apache Kafka.

Requisiti

Richiede Apache Beam SDK per Java versione 2.58.0 o successive.

Configurazione

I/O gestita utilizza i seguenti parametri di configurazione per Apache Kafka.

Lettura e scrittura della configurazione Tipo di dati Descrizione
bootstrap_servers string Obbligatorio. Un elenco separato da virgole di server bootstrap Kafka. Esempio: localhost:9092.
topic string Obbligatorio. L'argomento Kafka da leggere o scrivere.
file_descriptor_path string Il percorso di un insieme di descrittori di file del buffer del protocollo. Si applica solo se data_format è "PROTO".
data_format string Il formato dei messaggi. Valori supportati: "AVRO", "JSON", "PROTO", "RAW". Il valore predefinito è "RAW", che legge o scrive i byte non elaborati del payload del messaggio.
message_name string Il nome del messaggio del buffer del protocollo. Obbligatorio se data_format è "PROTO".
schema string

Lo schema dei messaggi Kafka. Il tipo di schema previsto dipende dal formato dei dati:

Per le pipeline di lettura, questo parametro viene ignorato se è impostato confluent_schema_registry_url.

Leggi configurazione Tipo di dati Descrizione
auto_offset_reset_config string

Specifica il comportamento quando non è presente alcun offset iniziale o se l'offset corrente non esiste più sul server Kafka. Sono supportati i seguenti valori:

  • "earliest": reimposta l'offset sull'offset più antico.
  • "latest": reimposta l'offset sull'ultimo.

Il valore predefinito è "latest".

confluent_schema_registry_subject string L'oggetto di un registry dello schema Confluent. Obbligatorio se confluent_schema_registry_url è specificato.
confluent_schema_registry_url string L'URL di un registry dello schema Confluent. Se specificato, il parametro schema viene ignorato.
consumer_config_updates mappa Imposta i parametri di configurazione per il consumer Kafka. Per ulteriori informazioni, consulta Configurazioni dei consumatori nella documentazione di Kafka. Puoi utilizzare questo parametro per personalizzare il consumer Kafka.
max_read_time_seconds int Il tempo di lettura massimo, in secondi. Questa opzione genera un valore PCollection limitato ed è destinata principalmente ai test o ad altri scenari non di produzione.
Scrittura configurazione Tipo di dati Descrizione
producer_config_updates mappa Imposta i parametri di configurazione per il produttore Kafka. Per maggiori informazioni, consulta Configurazioni del produttore nella documentazione di Kafka. Puoi utilizzare questo parametro per personalizzare il produttore Kafka.

Per leggere i messaggi Avro o JSON, devi specificare uno schema di messaggi. Per impostare direttamente uno schema, utilizza il parametro schema. Per fornire lo schema tramite un registro dello schema Confluent, imposta i parametri confluent_schema_registry_url e confluent_schema_registry_subject.

Per leggere o scrivere messaggi Protocol Buffer, specifica uno schema di messaggi o imposta il parametro file_descriptor_path.

Per ulteriori informazioni ed esempi di codice, consulta i seguenti argomenti: