O conector de E/S gerenciado do Dataflow permite ingerir dados em tempo real em tabelas do Apache Iceberg por um catálogo REST. Essa abordagem oferece gravações de streaming de baixa latência e roteamento de destino dinâmico, mantendo a interoperabilidade do formato de tabela aberta em toda a pilha de análise do lakehouse.
A E/S gerenciada é compatível com vários back-ends de catálogo, incluindo Hadoop, Hive e
metastore do BigQuery, mas este documento se concentra em pipelines de streaming
que têm como destino um catálogo REST do Lakehouse. Se você gravar em
tabelas do BigQuery para Apache Iceberg,
use o conector BigQueryIO
com a API BigQuery Storage, já que as tabelas de destino precisam existir antes
da ingestão.
Pré-requisitos
Configurar o Lakehouse. Configure o projeto do Google Cloud com as permissões necessárias seguindo Usar o catálogo do ambiente de execução do Lakehouse com o catálogo REST do Iceberg. Entenda as limitações do catálogo REST do Lakehouse Iceberg descritas nessa página.
Dependências
Adicione estas dependências ao projeto:
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>
Exemplo
O exemplo a seguir demonstra um pipeline de streaming que grava dados em uma tabela do Apache Iceberg usando o catálogo REST, que é respaldado pelo catálogo do ambiente de execução do Lakehouse.
Java
Para autenticar no Dataflow, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
A seguir
- Leitura de CDC do Apache Iceberg com o catálogo REST do Lakehouse.
- Saiba mais sobre a E/S gerenciada.
- Saiba mais sobre o Catálogo REST do Lakehouse.