Las tablas de BigLake para Apache Iceberg en BigQuery (en adelante, tablas de BigLake Iceberg en BigQuery) proporcionan la base para compilar lakehouses de formato abierto en Google Cloud. Las tablas de BigLake Iceberg en BigQuery ofrecen la misma experiencia completamente administrada que las tablas estándar de BigQuery, pero almacenan datos en buckets de almacenamiento que pertenecen al cliente. Las tablas de BigLake Iceberg en BigQuery admiten el formato de tabla de Iceberg abierto para una mejor interoperabilidad con los motores de procesamiento de código abierto y de terceros en una sola copia de los datos.
Descripción general de las funciones
Las tablas de BigLake Iceberg en BigQuery admiten las siguientes funciones:
- Mutaciones de tablas con el lenguaje de manipulación de datos (DML) de GoogleSQL
- Transmisión continua unificada por lotes y de alta capacidad de procesamiento con la API de BigQuery Storage Write a través de conectores de BigLake, como Spark, Dataflow y otros motores.
- Exportación de instantáneas de Iceberg V2 y actualización automática en cada mutación de la tabla para el acceso directo a consultas con motores de consultas de código abierto y de terceros.
- Evolución del esquema, que te permite agregar, descartar y cambiar el nombre de las columnas según tus necesidades. Esta función también te permite cambiar el tipo de datos de una columna existente y el modo de columna. Para obtener más información, consulta las reglas de conversión de tipos.
- Optimización automática del almacenamiento, que incluye el tamaño de archivo adaptable, el agrupamiento automático, la recolección de elementos no utilizados y la optimización de metadatos.
- Viaje en el tiempo para acceder a datos históricos en BigQuery
- Seguridad a nivel de la columna y enmascaramiento de datos.
- Transacciones de varias instrucciones (en versión preliminar)
- Partición de tablas (en versión preliminar).
- Creación de tablas en flujos de trabajo de Dataform
Arquitectura
Las tablas de BigLake Iceberg en BigQuery brindan la comodidad de la administración de recursos de BigQuery a las tablas que residen en tus propios buckets de nube. Puedes usar BigQuery y motores de procesamiento de código abierto en estas tablas sin mover los datos fuera de los buckets que controlas. Debes configurar un bucket de Cloud Storage antes de comenzar a usar las tablas de BigLake Iceberg en BigQuery.
Las tablas de BigLake Iceberg en BigQuery utilizan BigLake Metastore como el metastore unificado de tiempo de ejecución para todos los datos de Iceberg. BigLake Metastore proporciona una sola fuente de información para administrar los metadatos de varios motores y permite la interoperabilidad entre motores.
En el siguiente diagrama, se muestra la arquitectura de las tablas administradas en un nivel alto:
Esta administración de tablas tiene las siguientes implicaciones en tu bucket:
- BigQuery crea archivos de datos nuevos en el bucket en respuesta a solicitudes de escritura y optimizaciones de almacenamiento en segundo plano, como instrucciones DML y transmisión.
- Cuando borras una tabla administrada en BigQuery, BigQuery recopila los archivos de datos asociados en Cloud Storage después del vencimiento del período de viaje en el tiempo.
Crear una tabla de BigLake Iceberg en BigQuery es similar a crear tablas de BigQuery. Debido a que almacena datos en formatos abiertos en Cloud Storage, debes hacer lo siguiente:
- Especificar la conexión de recursos de Cloud con
WITH CONNECTIONpara configurar las credenciales de conexión de BigLake y acceder a Cloud Storage. - Especifica el formato de archivo del almacenamiento de datos como
PARQUETcon la instrucciónfile_format = PARQUET. - Especifica el formato de tabla de metadatos de código abierto como
ICEBERGcon la declaracióntable_format = ICEBERG.