I/O gestite da Dataflow

Il connettore I/O gestito è una trasformazione Apache Beam che fornisce una API per la creazione di origini e sink.

Panoramica

Puoi creare il connettore I/O gestito utilizzando il codice Apache Beam, proprio come qualsiasi dall'altro connettore I/O. Puoi specificare un'origine o un sink per creare un'istanza e passare un insieme di parametri di configurazione. Puoi anche inserire i parametri di configurazione in un file YAML e fornire un URL al file.

Sul backend, Dataflow tratta il connettore I/O gestito come un servizio, il che consente a Dataflow di gestire le operazioni di runtime per il connettore. In questo modo, puoi concentrarti sulla logica di business nella pipeline anziché gestire questi dettagli.

Per ulteriori informazioni sull'API I/O gestita, consulta Managed nella documentazione dell'SDK Apache Beam Java.

Apache Iceberg

Per Apache Iceberg, l'I/O gestita utilizza i seguenti parametri di configurazione:

Nome Tipo di dati Descrizione
table string L'identificatore della tabella Apache Iceberg. Esempio: "db.table1".
catalog_name string Il nome del catalogo. Esempio: "local".
catalog_properties mappa Una mappa delle proprietà di configurazione per il catalogo Apache Iceberg. Le proprietà richieste dipendono dal catalogo. Per maggiori informazioni le informazioni, vedi CatalogUtil nella documentazione di Apache Iceberg.
config_properties mappa Un insieme facoltativo di proprietà di configurazione di Hadoop. Per maggiori informazioni le informazioni, vedi CatalogUtil nella documentazione di Apache Iceberg.
triggering_frequency_seconds integer Per le pipeline di scrittura in modalità flusso, la frequenza con cui il sink tenta di creare snapshot, in pochi secondi.

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

Apache Kafka

Per Apache Kafka, l'I/O gestita utilizza i seguenti parametri di configurazione.

Configurazione di lettura e scrittura 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 cui leggere.
file_descriptor_path string Il percorso di un set di descrittori del file del buffer di protocollo. Si applica solo se data_format è "PROTO".
data_format string Il formato dei messaggi. Valori supportati: "AVRO", "JSON", "PROTO", "RAW". La il valore predefinito è "RAW", che legge o scrive i dati non elaborati byte 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 confluent_schema_registry_url impostato.

Leggi configurazione
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. I seguenti valori sono supportati:

  • "earliest": reimposta l'offset sul primo offset.
  • "latest": reimposta l'offset sull'offset più recente.

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 registro di schemi 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
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 per personalizzare il produttore Kafka.

Per leggere i messaggi Avro o JSON, devi specificare uno schema dei messaggi. Per impostare un direttamente lo schema, usa il parametro schema. Per fornire lo schema tramite Confluent Schema Registry, imposta confluent_schema_registry_url e Parametri confluent_schema_registry_subject.

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