Per scrivere da Dataflow ad Apache Iceberg, utilizza il connettore I/O gestito.
I/O gestita supporta le seguenti funzionalità per Apache Iceberg:
Cataloghi |
|
---|---|
Funzionalità di lettura | Lettura batch |
Funzionalità di scrittura |
|
Per le tabelle BigQuery per Apache Iceberg,
utilizza il
connettore BigQueryIO
con l'API BigQuery Storage. La tabella deve già esistere; la creazione di tabelle dinamiche non è supportata.
Dipendenze
Aggiungi le seguenti dipendenze al progetto:
Java
<dependency>
<groupId>org.apache.beam</groupId>
<artifactId>beam-sdks-java-managed</artifactId>
<version>${beam.version}</version>
</dependency>
<dependency>
<groupId>org.apache.beam</groupId>
<artifactId>beam-sdks-java-io-iceberg</artifactId>
<version>${beam.version}</version>
</dependency>
Configurazione
L'I/O gestita utilizza i seguenti parametri di configurazione per Apache Iceberg:
Lettura e scrittura della configurazione | 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 ulteriori informazioni, consulta
CatalogUtil nella documentazione di Apache Iceberg. |
config_properties |
mappa | Un insieme facoltativo di proprietà di configurazione Hadoop. Per ulteriori informazioni, consulta
CatalogUtil nella documentazione di Apache Iceberg. |
Scrittura configurazione | Tipo di dati | Descrizione |
triggering_frequency_seconds |
integer | Per le pipeline di scrittura in streaming, la frequenza con cui il sink tenta di produrre snapshot, in secondi. |
Destinazioni dinamiche
I/O gestito per Apache Iceberg supporta le destinazioni dinamiche. Invece di scrivere in una singola tabella fissa, il connettore può selezionare dinamicamente una tabella di destinazione in base ai valori dei campi all'interno dei record in entrata.
Per utilizzare le destinazioni dinamiche, fornisci un modello per il parametro di configurazione table
. Per ulteriori informazioni, consulta
Destinazioni dinamiche.
Esempio
Il seguente esempio scrive i dati JSON in-memory in una tabella Apache Iceberg.
Java
Per autenticarti a Dataflow, configura le credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Passaggi successivi
- Leggi da Apache Iceberg.
- Scopri di più sull'I/O gestita.