Arch Day 180
Arch Day 180: 数据工程总结 — 架构师的数据能力
现代架构师必须理解数据栈——不是要你写Spark job,而是要你能做数据架构决策:选仓库、设计数据模型、规划管道、理解成本。
2026-09-26
第七阶段 - Web3专题深度数据工程总结面试dbt数据建模架构师
日期: 2026-09-26 (Day 180) 阶段: 第七阶段 - Web3专题深度 标签: #数据工程 #总结 #面试 #dbt #数据建模 #架构师
核心概念
一句话定义
现代架构师必须理解数据栈——不是要你写Spark job,而是要你能做数据架构决策:选仓库、设计数据模型、规划管道、理解成本。
知识点详解
1. 三天知识总览
| Day | 主题 | 核心收获 |
|---|---|---|
| 178 | 现代数据栈 | dbt是转换层标准,Hybrid建模(Kimball+OBT) |
| 179 | 数据编排 | Airflow 3.0 vs Dagster,区块链索引器生态 |
| 180 | 总结 | 架构师的数据决策框架 |
2. 数据架构决策框架
Step 1: 选数据仓库
├── SQL分析为主 → Snowflake
├── 数据工程+ML → Databricks
└── Google Cloud → BigQuery
Step 2: 选转换层
└── dbt (几乎无需选择)
Step 3: 选编排
├── 已有Airflow → Airflow 3.0
├── 新建 → Dagster
└── 简单 → Prefect
Step 4: 选实时层(如需要)
├── AWS → Kinesis + MSK
├── 开源 → Kafka + Flink
└── 简单 → EventBridge
Step 5: 选区块链数据
├── 标准历史查询 → Dune
├── 自定义索引 → The Graph/Goldsky
└── 多链统一API → Covalent
3. 成本意识
dbt models运行成本差异巨大:Snowflake ~$480/月 vs Databricks ~$85/月(相同200模型)。选择时必须考虑长期成本。
4. 面试高频题
- dbt解决了什么问题?
- Kimball vs OBT怎么选?
- Airflow vs Dagster?
- 实时vs批处理的trade-off?
- 如何设计区块链数据管道?
面试题
问题:如何为Web3公司设计数据架构?
回答:三层架构——1) 数据采集层: 链上数据用The Graph/Goldsky索引,链下数据用Fivetran/Airbyte同步到S3/GCS;2) 转换层: dbt在Snowflake/Databricks中做模型转换(Raw→Decoded→Protocol→Metrics四层);3) 消费层: Dune做探索性分析,Metabase/Looker做内部BI,API层对外暴露数据。关键决策:实时清算监控用Kafka+Flink独立管道,不走批处理。