Skip to main content
ClickHouse puede conectarse a Snowflake Horizon Catalog a través de la API REST de Iceberg que expone Horizon (basada en Apache Polaris). Esto permite leer y escribir tablas Iceberg administradas por Snowflake desde ClickHouse mediante el motor de base de datos DataLakeCatalog con catalog_type = 'horizon'. Horizon está relacionado con Snowflake Open Catalog / Polaris autohospedado, pero no es lo mismo:
Dado que esta función está en beta, actívela con: SET allow_experimental_database_iceberg = 1; (o SET allow_database_iceberg = 1;, según la versión de ClickHouse).

Requisitos previos

  • Una cuenta de Snowflake con tablas Iceberg administradas por Snowflake
  • Endpoint REST de Horizon Iceberg: https://<organization>-<account>.snowflakecomputing.com/polaris/api/catalog
  • Un rol de Snowflake con privilegios sobre las tablas Iceberg (y privilegios de escritura si va a usar INSERT)
  • Autenticación mediante una de las siguientes opciones:
    • Token de acceso programático (PAT)
    • JWT de par de claves intercambiado por un token de acceso
    • Token de acceso OAuth externo (como auth_header de tipo bearer)
  • Almacenamiento de objetos accesible desde ClickHouse (se recomiendan las credenciales proporcionadas)
  • ClickHouse con soporte para DataLakeCatalog Iceberg

Crear una conexión

warehouse debe ser el nombre de la base de datos de Snowflake (no de un warehouse virtual de Snowflake). Los identifiers de Snowflake sin comillas se escriben en mayúsculas.

Opción B: Token de acceso de bearer intercambiado previamente

Consultar tablas Iceberg

El espacio de nombres (schema) y la tabla suelen especificarse como `SCHEMA.table`, salvo que estén habilitados los espacios de nombres de tabla experimentales.

Ruta de escritura

Con un rol que tenga permisos INSERT/UPDATE/DELETE (y CREATE ICEBERG TABLE al crear tablas), ClickHouse puede escribir a través del mismo catálogo:
La sintaxis exacta de CREATE TABLE depende de la compatibilidad de escritura de ClickHouse Iceberg / DataLakeCatalog para catálogos REST en su versión; los errores de privilegios de Snowflake aparecen como errores HTTP del catálogo.

Carga en MergeTree

Última modificación el 26 de agosto de 2026