返回架构笔记
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独立管道,不走批处理。