Per leggere gli eventi Change Data Capture (CDC) da Apache Iceberg utilizzando il catalogo REST Lakehouse, utilizza il connettore Managed I/O di Apache Beam.
Managed I/O 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
BigQueryIO connettore
con l'API BigQuery Storage. La tabella deve già esistere; la creazione di tabelle dinamiche non è supportata.
Limitazioni
- Apache Iceberg CDC è supportato solo tramite l'API gestita. Le funzionalità del servizio di trasformazione gestita non sono ancora attivate. Prevedi modifiche che influiscono sulla compatibilità con le versioni precedenti
- L'API gestita CDC legge solo gli snapshot di sola aggiunta. Il CDC completo non è ancora disponibile.
Prerequisiti
- Configura Lakehouse. Configura il tuo Google Cloud progetto con le autorizzazioni richieste seguendo la procedura descritta in Utilizzare il catalogo runtime Lakehouse con il catalogo REST Iceberg. Assicurati di comprendere le limitazioni del catalogo REST Lakehouse Iceberg descritte in questa pagina.
- Crea una tabella Iceberg di origine. L'esempio mostrato qui presuppone che tu abbia una tabella Apache Iceberg. Per crearne una, puoi utilizzare la pipeline mostrata in Scrittura in streaming in Apache Iceberg con il catalogo REST Lakehouse.
Dipendenze
Aggiungi le seguenti dipendenze al tuo 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>
<dependency>
<groupId>org.apache.iceberg</groupId>
<artifactId>iceberg-gcp</artifactId>
<version>${iceberg.version}</version>
</dependency>
Esempio
L'esempio seguente mostra una pipeline di streaming che legge gli eventi CDC da una tabella Apache Iceberg, aggrega i clic degli utenti e scrive i risultati in un'altra tabella Apache Iceberg.
Java
Per eseguire l'autenticazione in Dataflow, configura le credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Passaggi successivi
- Scopri di più su Managed I/O.
- Scopri di più sul catalogo REST Lakehouse.