La E/S administrada admite las siguientes capacidades para Apache Iceberg:
Catálogos |
|
---|---|
Capacidades de lectura | Lectura por lotes |
Capacidades de escritura |
|
Para las tablas de BigQuery para Apache Iceberg, usa el conector de BigQueryIO
con la API de BigQuery Storage. La tabla ya debe existir, ya que no se admite la creación de tablas dinámicas.
Requisitos
Los siguientes SDK admiten la E/S administrada para Apache Iceberg:
- SDK de Apache Beam para Java, versión 2.58.0 o posterior
- SDK de Apache Beam para Python, versión 2.61.0 o posterior
Configuración
La E/S administrada para Apache Iceberg admite los siguientes parámetros de configuración:
ICEBERG
Leer
Configuración | Tipo | Descripción |
---|---|---|
table |
str
|
Es el identificador de la tabla de Iceberg. |
catalog_name |
str
|
Nombre del catálogo que contiene la tabla. |
catalog_properties |
map[str, str]
|
Son las propiedades que se usan para configurar el catálogo de Iceberg. |
config_properties |
map[str, str]
|
Son las propiedades que se pasan a la configuración de Hadoop. |
drop |
list[str]
|
Es un subconjunto de nombres de columnas que se excluirán de la lectura. Si es nulo o está vacío, se leerán todas las columnas. |
filtrar |
str
|
Es un predicado similar a SQL para filtrar datos durante el análisis. Ejemplo: "id > 5 AND status = 'ACTIVE'". Usa la sintaxis de Apache Calcite: https://calcite.apache.org/docs/reference.html |
keep |
list[str]
|
Es un subconjunto de nombres de columnas que se leerán de forma exclusiva. Si es nulo o está vacío, se leerán todas las columnas. |
ICEBERG
Escribir
Configuración | Tipo | Descripción |
---|---|---|
table |
str
|
Es un identificador de tabla completamente calificado. También puedes proporcionar una plantilla para escribir en varios destinos dinámicos, por ejemplo: `dataset.my_{col1}_{col2.nested}_table`. |
catalog_name |
str
|
Nombre del catálogo que contiene la tabla. |
catalog_properties |
map[str, str]
|
Son las propiedades que se usan para configurar el catálogo de Iceberg. |
config_properties |
map[str, str]
|
Son las propiedades que se pasan a la configuración de Hadoop. |
drop |
list[str]
|
Es una lista de nombres de campos que se quitarán del registro de entrada antes de escribirlo. Es mutuamente excluyente con "keep" y "only". |
keep |
list[str]
|
Es una lista de nombres de campos que se conservarán en el registro de entrada. Todos los demás campos se descartan antes de la escritura. Es mutuamente excluyente con "drop" y "only". |
solo |
str
|
Nombre de un solo campo de registro que se debe escribir. Es mutuamente exclusivo con "keep" y "drop". |
partition_fields |
list[str]
|
Son los campos que se usan para crear una especificación de partición que se aplica cuando se crean tablas. Para un campo "foo", las transformaciones de partición disponibles son las siguientes:
Para obtener más información sobre las transformaciones de partición, visita https://iceberg.apache.org/spec/#partition-transforms. |
table_properties |
map[str, str]
|
Son las propiedades de la tabla de Iceberg que se configurarán en la tabla cuando se cree. Para obtener más información sobre las propiedades de la tabla, visita https://iceberg.apache.org/docs/latest/configuration/#table-properties. |
triggering_frequency_seconds |
int32
|
Para una canalización de transmisión, establece la frecuencia con la que se producen las instantáneas. |
¿Qué sigue?
Para obtener más información y ejemplos de código, consulta los siguientes temas: