dbt-clickhouse 不会被弃用:我们会持续跟进 dbt 1.x 的 发行版,并同时维护这两个 adapter。
dbt Core 1.x 的文档同样适用于 dbt OSS 和 dbt v2。 该 adapter 在两种引擎上的行为一致:其他 dbt 页面中描述的 profiles、模型配置、物化类型和 macros,在 dbt OSS、dbt v2 和 dbt 平台上均可原样使用。例外情况记录在下方的 v1 与 v2 parity 表中。
dbt OSS 是 v2 引擎的 open-source (Apache 2.0) build。有关它与 dbt v2 和 dbt 平台的关系,请参阅术语与 availability。
在 dbt 平台中体验 ClickHouse
如果你有兴趣参与私有 Beta 测试,请通过 dbt Labs 的私有 Beta 申请表 提交申请。该表单由 dbt Labs 提供,因此你提交的信息将发送给 dbt Labs,而非 ClickHouse。开通后,请参照 dbt 文档中的 Connect ClickHouse 配置连接。术语与可用性
dbt 有多种形态,同一个 adapter 可以在其中多种形态下运行。下表说明各个名称的含义以及当前的 ClickHouse 支持级别。Beta 状态
我们使用dbt-clickhouse 的 dbt Core 1.x 集成测试套件来检验 dbt v2 adapter。Beta 意味着核心 dbt 工作流和 ClickHouse Cloud 功能集在已记录的限制范围内均可正常使用;与 v1 的完全对等以及自管理集群支持将在之后提供。
目前,该 adapter 通过了完整 v1 套件中超过 81% 的测试,以及适用于 ClickHouse Cloud 的测试中的 92%。所有物化类型均已对等 (view、table、incremental、materialized_view、dictionary、snapshot、seed、ephemeral) ,并支持完整的表配置集、模型契约、数据测试与单元测试、文档持久化、clickhouse_s3source() 以及 dbt Core 1.x 的连接设置。剩余的失败项与下文列出的自管理集群相关工作以及少数引擎侧差异有关。逐项功能对比请参见 v1 与 v2 对等情况。
后续计划:面向自管理集群的 ON CLUSTER DDL 与分布式物化类型、授权、dbt clone、基于表元数据的 dbt source freshness,修复剩余缺陷,并通过完整的 v1 测试套件以实现完全对等。以上各项的进展均在 ClickHouse/dbt-clickhouse#660 中跟踪,每个领域对应一个子 issue。
GA 已列入 roadmap,不久即将推出。准备就绪后我们会更新文档。
Beta 范围之外的内容
除下文列出的与 v1 的功能差距之外,还有一些 v2 独有的功能目前不在范围内,但很快就会支持:- Semantic Layer / MetricFlow。 目前尚未添加 ClickHouse 支持。进展跟踪见 dbt-labs/metricflow#2124。
- dbt v2 中的 ClickHouse SQL 智能能力 (dialect 感知的校验、静态分析、LSP、VS Code 扩展中的列感知) 。目前该 adapter 可以配合 dbt v2 二进制文件运行,但尚未包含这些功能。在此之前,ClickHouse 项目的静态分析会被强制设为
off,引擎也不会写入列级血缘信息。进展跟踪见 #736。 - dbt 平台中除用户名和密码之外的其他认证方式。
v1 与 v2 的功能对等情况
下表将dbt-clickhouse (v1) 中可用的功能与其在 dbt v2 adapter 中的状态进行对比。除备注另有说明外,所列的每项功能在 v1 中均受支持;状态列对应的是 dbt v2,并同样适用于 dbt OSS。每个待处理项的进展都在 ClickHouse/dbt-clickhouse#660 中跟踪。
已支持 目前已可用 · 部分支持 在一定限制下可用 · 尚未支持 尚未实现。