DBT 实战系列

dbt(Data Build Tool)是目前最流行的数据转换工具,它把软件工程的最佳实践——版本控制、测试、文档、模块化——引入数据建模。你用 SQL 写转换逻辑,dbt 负责依赖管理、增量计算、数据质量测试和文档生成。

ClickZetta Lakehouse 通过

dbt-clickzetta
dbt-clickzetta
adapter 原生支持 dbt,并在标准 dbt 功能之上提供了几个 ClickZetta 特有的能力:

能力说明
Dynamic Table声明式增量计算,系统自动按周期刷新,无需外部调度
Table Stream行级变更捕获(CDC),追踪 INSERT/UPDATE/DELETE
索引自动创建建表时自动创建 Bloomfilter / 倒排 / 向量索引
零拷贝克隆毫秒级克隆表,不占额外存储,适合 CI/CD 环境隔离
VCluster per-model为单个模型指定计算集群,ETL 写入和聚合查询资源隔离

配套项目

本系列所有文档的代码均来自以下三个可直接运行的开源项目,不是凭空编写的示例:

jaffle-shop-clickzetta 咖啡店订单数据集,dbt 官方示例项目的 ClickZetta 版本。包含 6 张 seed 表、6 个 staging 视图、7 张 mart 表、27 个 data test、3 个 unit test。适合快速上手,从零到跑通约 1 分钟。

snowflake-dbt2lakehouse-dbt TPC-H 订单数仓,从 Snowflake 迁移到 ClickZetta 的完整项目。覆盖 Dynamic Table、Table Stream CDC、增量管道、SCD 维度表等高级场景。数据源使用 ClickZetta 内置的 TPC-H 共享数据集(1.5 亿行订单),无需导入数据。

dbt-clickzetta examples

examples/
examples/
目录) dbt-clickzetta adapter 的功能演示项目,覆盖所有支持的 materialization 类型和高级特性。


从哪里开始

根据你的情况选择入口:

刚接触 dbt,想快速跑通 → 先看 DBT 快速入门(Jaffle Shop),30 分钟内跑通完整项目

已有 dbt 项目,想了解增量处理DBT 增量处理实战,4 种策略的选型和实际代码

想用 Dynamic Table 或 Table Stream 做实时管道DBT 实时数据管道实战

想给数据管道加测试DBT 数据质量实战,data test + unit test,实测 30/30 通过

想用索引、clone、VCluster 等 ClickZetta 特有能力DBT 高级特性实战

从 Snowflake 迁移过来DBT Snowflake 迁移实战:TPC-H 数仓管道


系列文章


版本要求

建议使用 dbt-clickzetta >= 1.7.5,该版本修复了所有已知问题:

版本主要修复
1.6.2seed
float8
float8
类型报错、timestamp seed 挂起、unit test
safe_cast
safe_cast
语法错误
1.6.3macro 里
this.database
this.database
返回
None
None
1.6.5Stream 系统列注入生成 SQL 导致报错;
SELECT * EXCEPT(...)
SELECT * EXCEPT(...)
正常工作
1.7.0seed 改用 COPY INTO,速度提升 3-5 倍
1.7.5
dbt seed --full-refresh
dbt seed --full-refresh
报 "already exists";unit test DROP TABLE on VIEW 报错

相关文档

联系我们
预约咨询
微信咨询
电话咨询