跳转到主要内容
ClickHouse 支持与开放表格式集成,包括 Apache IcebergDelta LakeApache HudiApache Paimon。这使用户能够将 ClickHouse 连接到对象存储中以这些格式存储的现有数据,将 ClickHouse 的分析能力与现有数据湖基础设施结合起来。

为何将 ClickHouse 与开放表格式搭配使用?

就地查询现有数据

ClickHouse 可以直接查询对象存储中的开放表格式,而无需复制数据。对于已采用 Iceberg、Delta Lake、Hudi 或 Paimon 作为标准的组织,ClickHouse 可直接指向现有表,并立即使用其 SQL 方言、分析函数以及高效的原生 Parquet 读取器。同时,clickhouse-localchDB 等工具支持对远程存储中 70 多种文件格式进行探索式临时分析,使用户无需搭建任何基础设施,即可交互式探索数据湖数据集。 用户既可以通过直接读取 (使用表函数和表引擎) 来实现,也可以通过连接到数据目录来实现。

使用 ClickHouse 处理实时分析工作负载

对于需要高并发和低延迟响应的工作负载,用户可以将开放表格式中的数据加载到 ClickHouse 的 MergeTree 引擎中。这会在源自数据湖的数据之上提供一个实时分析层,支持仪表盘、运营报表以及其他对延迟敏感、可受益于 MergeTree 列式存储和索引能力的工作负载。 请参阅使用 MergeTree 加速分析的入门指南。

能力

直接读取数据

ClickHouse 提供了可直接读取对象存储上开放表格式的表函数引擎iceberg()deltaLake()hudi()paimon() 等函数允许用户无需任何预先配置,即可在 SQL 语句中查询开放表格式的表。这些函数针对大多数常见对象存储都提供了对应版本,例如 S3、Azure Blob 存储和 GCS。这些函数也有对应的表引擎,可用于在 ClickHouse 中创建引用底层开放表格式对象存储的表,从而让查询更加便捷。 请参阅我们的入门指南,了解如何直接查询,或如何连接到数据目录

将目录映射为数据库

使用 DataLakeCatalog 数据库引擎,用户可以将 ClickHouse 连接到外部目录,并将其映射为数据库。注册在目录中的表会作为 ClickHouse 中的表呈现,从而能够无缝使用完整的 ClickHouse SQL 语法和分析函数。这意味着,用户可以像操作原生 ClickHouse 表一样,对由目录管理的表执行查询、JOIN 和聚合,并受益于 ClickHouse 的查询优化、并行执行和读取能力。 支持的目录包括:
目录指南
AWS GlueGlue Catalog 指南
BigLake MetastoreBigLake Metastore 指南
Databricks Unity CatalogUnity Catalog 指南
Iceberg REST CatalogREST Catalog 指南
LakekeeperLakekeeper Catalog 指南
Project NessieNessie Catalog 指南
Microsoft OneLakeOneLake Catalog 指南
有关连接到目录的说明,请参阅入门指南。

回写到开放表格式

ClickHouse 支持将数据回写到开放表格式,这在以下场景中尤其适用:
  • 从实时到长期存储 - 数据经由 ClickHouse 这一实时分析层流转,用户需要将结果转存到 Iceberg 或其他格式中,以实现持久且具成本效益的长期存储。
  • 反向 ETL - 用户使用 ClickHouse 中的 materialized views 或定时查询执行转换,并希望将结果持久化到开放表格式中,供数据生态系统中的其他工具使用。
请参阅关于写入数据湖的入门指南。

后续步骤

准备好亲自试试了吗?入门指南 将带你走完整个端到端工作流:直接查询开放表格式、连接到目录、将数据加载到 MergeTree 以实现快速分析,并将结果写回。
最后修改于 2026年6月10日