返回架构笔记
Arch Day 178

Arch Day 178: 现代数据栈 — dbt、Snowflake与数据建模

现代数据栈(Modern Data Stack)的核心范式是ELT(先加载原始数据,再用仓库算力转换)——dbt作为转换层已成行业标准,90,000+项目在生产运行。

2026-09-24
第七阶段 - Web3专题深度
dbtSnowflakeDatabricksBigQuery数据建模ELT现代数据栈

日期: 2026-09-24 (Day 178) 阶段: 第七阶段 - Web3专题深度 标签: #dbt #Snowflake #Databricks #BigQuery #数据建模 #ELT #现代数据栈


核心概念

一句话定义

现代数据栈(Modern Data Stack)的核心范式是ELT(先加载原始数据,再用仓库算力转换)——dbt作为转换层已成行业标准,90,000+项目在生产运行。


知识点详解

1. 三大云数据仓库

维度SnowflakeDatabricksBigQuery
定位SQL-firstLakehouse(工程+ML)Serverless分析
dbt兼容最佳日益增强优秀
AI/MLSnowpark(较新)原生强项Vertex AI
200个dbt models月费~$480~$85按查询量

2. dbt Core vs dbt Cloud

维度CoreCloud
成本免费$100/月起
调度需外部工具内置
Semantic Layer不支持支持(GA)

重大事件: Fivetran和dbt Labs 2025.10宣布合并,年收入近$6亿。

3. 数据建模最佳实践

Hybrid方案(2026推荐):

  • Kimball Star Schema构建中间层(staging+marts)
  • OBT(One Big Table)构建报表层
  • 兼顾可维护性和查询性能

4. dbt新特性

  • Semantic Layer: 定义metrics和dimensions的开放标准
  • dbt Mesh: 多团队多项目,通过contracts互相引用
  • dbt Fusion Engine: 全新引擎,流批一体(Apache Flink集成)

5. Web3/金融数据建模

层级内容建模
RawBlocks/Transactions/Logs1:1映射链上
DecodedTransfer/Swap事件ABI解码
ProtocolUniswap trades等协议逻辑聚合
MetricsTVL/Volume/Users时间序列

面试题

问题:dbt解决了什么问题?

回答:dbt解决了数据转换(Transformation)的工程化问题——1) 版本控制: SQL模型用Git管理;2) 测试: 内置数据质量测试(not_null/unique/关系验证);3) 文档: 自动生成数据字典和血缘图;4) 模块化: ref()函数管理模型间依赖;5) 可重复: 每次运行结果一致。本质是把软件工程的最佳实践带入数据分析。