Es posible que debas transferir y transformar datos para el análisis downstream a gran escala que se almacena en formatos de tabla abierta de Apache Iceberg. Transferir datos de Apache Iceberg a Dataflow con el conector de E/S administrado te permite ejecutar canalizaciones por lotes paralelas y distribuidas para leer y procesar conjuntos de datos de gran volumen en Hadoop, Hive, catálogos de REST y el almacén de metadatos de BigQuery.
Si trabajas con tablas de BigQuery para
Apache Iceberg, usa el conector
BigQueryIO
con la API de BigQuery Storage. La tabla de destino ya debe existir, ya que
no se admite la creación dinámica de tablas.
Funciones
La E/S administrada admite las siguientes capacidades para Apache Iceberg:
| Catálogos |
|
|---|---|
| Leer capacidades | Lectura por lotes |
| Funciones de escritura |
|
En el caso de las tablas de BigQuery para Apache Iceberg,
usa el
conector BigQueryIO
con la API de BigQuery Storage. La tabla ya debe existir; no se admite la creación dinámica de tablas.
Dependencias
Agrega las siguientes dependencias a tu proyecto:
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>
Ejemplo
En el siguiente ejemplo, se leen desde una tabla de Apache Iceberg y se escriben los datos en archivos de texto.
Java
Para autenticarte en Dataflow, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
¿Qué sigue?
- Escribe en Apache Iceberg.
- Escritura de transmisión en Apache Iceberg con el catálogo de REST de Lakehouse.
- Obtén más información sobre la E/S administrada.