离线数仓

电商数仓实战课程地图

43 次阅读更新于 2026/9/13

1. 为什么要做这套项目

很多数仓资料从概念或零散 SQL 开始,学习者知道 ODS、DWD、DWS 的名称,却不知道为什么要分层,也无法证明自己算出的 GMV 是否正确。

本项目从一个真实经营问题开始:

6 月销售额为什么变化?究竟是流量、转化、客单价、商品结构还是退款出了问题?

学习路径围绕这个问题逐层展开,最终产物不是几张孤立表,而是一套可构建、可查询、可对账、可交付的电商数仓。

电商数仓十章学习路线

这张主视觉图用于快速建立全局认知;需要查看具体字段和 SQL 时,再进入对应章节的技术图和代码入口。

2. 最终能力链路

业务问题
  → 源系统和业务过程
  → 粒度与维度建模
  → ODS 原始层
  → DIM / DWD 公共维度与明细事实
  → DWS 主题汇总
  → ADS 应用结果
  → 数据质量与发布门禁
  → 增量设计、调度与商业交付

3. 十章结构

第 1 章:业务场景、分析需求与项目边界

核心问题:这个数仓为谁服务,必须回答哪些经营问题?

动手产物:业务问题清单、指标树和当前实现边界。

第 2 章:源系统与样例数据

核心问题:订单、支付、退款和行为事件在源系统中分别代表什么?

动手产物:九张源表的数据字典、数据生成器和业务信号说明。

第 3 章:维度建模与总线矩阵

核心问题:怎样确定事实表粒度,并让渠道、商品、用户等维度跨主题复用?

动手产物:业务过程总线矩阵、粒度字典和星型模型设计。

第 4 章:ODS 原始数据层

核心问题:怎样保留源数据,同时为后续加工提供可追溯入口?

动手产物:ODS 表、类型检查以及生产环境审计字段扩展方案。

第 5 章:公共维度层

核心问题:怎样统一日期、用户、商品、店铺和渠道描述?

动手产物:五张维度表、日期 spine 和 SCD Type 2 扩展练习。

第 6 章:DWD 明细事实层

核心问题:怎样避免支付、退款和订单商品关联造成金额重复?

动手产物:四张事实表、支付状态解析、退款预聚合、业务主键和 59 项事实对账。

第 7 章:DWS 主题汇总层

核心问题:哪些聚合值得沉淀为跨应用复用的数据资产?

动手产物:渠道日、商品日和用户日主题表,完整维度网格、指标可加性边界和 74 项主题对账。

第 8 章:ADS 应用数据层

核心问题:怎样把通用主题表转成经营看板和固定分析可以直接读取的结果?

动手产物:经营总览、渠道表现、商品排行、退款监控和复购应用表,以及 113 项应用口径验收。

第 9 章:数据质量与跨层对账

核心问题:怎样证明数据正确,而不是只证明 SQL 能执行?

动手产物:584 项上游质量证据、53 项统一门禁、跨层对账报告和隔离故障演练。

第 10 章:增量、调度与商业交付

核心问题:怎样从全量教学案例走向可维护的数据工程项目?

动手产物:增量方案、调度 DAG、部署说明、Release 包和最终验收。

当前项目在这一章实现本地全量编排和独立商业 ZIP;CDC、增量 MERGE、持久水位和云调度作为生产目标设计,明确标记为尚未实现。

4. 两条学习路径

路径 A:数仓零基础

按第 1 章到第 10 章顺序学习,每章都完成动手任务。

路径 B:有数仓经验的开发者

先运行 make validate,再重点学习第 3、6、8、9、10 章,比较当前实现与自己的生产经验。

5. 与 Data Agent 的边界

本项目的最终职责是交付可信数据。Data Agent 可以读取 DWS 或 ADS,但自然语言理解、SQL 安全、会话和 Web 工作台属于另一个独立项目。

两个项目的关系是能力递进,而不是安装依赖。

6. 最终毕业验收

完成十章后,在项目根目录执行:

make release

该命令会重建五层数仓,运行 637 项质量证据和自动化测试,生成版本化 ZIP,并在临时解压目录再次执行完整测试。技术验收通过后,学习者应能够独立解释业务粒度、指标口径、跨层对账、增量边界和交付完整性。

评论

登录 后参与评论

加载中...