En resumenUna guía práctica para consultar tablas de lago de datos, acelerarlas con MergeTree y escribir de nuevo los resultados en Iceberg. Todos los pasos usan datasets públicos y funcionan tanto en Cloud como en OSS.
Consultar datos de Iceberg directamente
La forma más rápida de empezar es con la función de tablaicebergS3(): apúntala a una tabla Iceberg en S3 y haz la consulta de inmediato, sin necesidad de configuración.Inspecciona el esquema:deltaLake(), hudi() y paimon().Más información: Consultar directamente formatos de tabla abiertos abarca los cuatro formatos, las variantes de cluster para lecturas distribuidas y las opciones de backend de almacenamiento (S3, Azure, HDFS, local).Cree una tabla persistente con el motor de tabla
Para acceder repetidamente, cree una tabla con el motor de tabla Iceberg para no tener que indicar la ruta cada vez. Los datos permanecen en S3 — no se duplica ningún dato:Conectarse a un catálogo
La mayoría de las organizaciones administran las tablas de Iceberg mediante un catálogo de datos para centralizar los metadatos de las tablas y el descubrimiento de datos. ClickHouse permite conectarse a su catálogo mediante el motor de base de datosDataLakeCatalog, lo que expone todas las tablas del catálogo como una base de datos de ClickHouse. Esta es la opción más escalable, ya que, a medida que se crean nuevas tablas de Iceberg, siempre están accesibles en ClickHouse sin necesidad de trabajo adicional.A continuación se muestra un ejemplo de conexión a AWS Glue:Se requieren comillas invertidas alrededor de
<database>.<table> porque ClickHouse no admite de forma nativa más de un espacio de nombres.Realiza una consulta
Independientemente del método que hayas usado antes —función de tabla, motor de tabla o catálogo—, el mismo ClickHouse SQL funciona en todos los casos:FROM. Todas las funciones de ClickHouse SQL, los JOIN y las agregaciones funcionan de la misma manera independientemente de la fuente de datos.Cargar un subconjunto en ClickHouse
Consultar Iceberg directamente es práctico, pero el rendimiento está limitado por el ancho de banda de la red y la organización de los archivos. Para cargas de trabajo analíticas, cargue los datos en una tabla nativa MergeTree.Primero, ejecute una consulta filtrada sobre la tabla Iceberg para obtener una referencia:counterid; es de esperar que tarde varios segundos.Ahora crea una tabla MergeTree y carga los datos:counterid es la primera columna de la clave ORDER BY, el índice primario disperso de ClickHouse salta directamente a los gránulos relevantes y solo lee las filas de counterid = 38, en lugar de escanear los 100 millones de filas. El resultado es un aumento drástico de la velocidad.La guía aceleración de analítica va un paso más allá con tipos LowCardinality, índices de texto completo y claves de ordenación optimizadas, y muestra una mejora de ~40x en un conjunto de datos de 283 millones de filas.Más información: Aceleración de analítica con MergeTree abarca la optimización del esquema, la indexación de texto completo y una comparación completa del rendimiento antes y después.Escritura en Iceberg
ClickHouse también puede escribir datos de vuelta en tablas de Iceberg, lo que permite flujos de trabajo de ETL inverso: publicar resultados agregados o subconjuntos para que otras herramientas (Spark, Trino, DuckDB, etc.) los consuman.Cree una tabla de Iceberg para la salida:Próximos pasos
- Consultas directas — Los cuatro formatos, variantes de clúster, motores de tabla, caché
- Conexión a catálogos — Guía completa de Unity Catalog con Delta e Iceberg
- Acelerar la analítica — Optimización del esquema, indexación, demostración de aceleración de ~40x
- Escritura en lagos de datos — Escrituras en bruto, escrituras agregadas, mapeo de tipos
- Matriz de compatibilidad — Comparación de funcionalidades entre formatos y backends de almacenamiento