数据仓库和数据集市详解:ODS、DW、DWD、DWM、DWS、ADS
解释数据仓库与数据集市的关系,梳理 ODS、DW、DWD、DWM、DWS、ADS 等常见分层的职责和建模思路。
数据仓库是面向分析和决策的数据系统,通常通过采集、清洗、建模、汇总和服务化,把分散在业务系统中的数据组织成可复用的数据资产。数据集市则更偏向某个业务主题或部门的分析需求,是数据仓库体系中的局部服务层。
数据仓库与数据集市的关系
数据仓库强调统一、集成和长期沉淀,关注企业级口径和跨域分析。数据集市强调面向具体场景,例如营销分析、财务分析、风控分析或运营看板。两者不是对立关系,常见做法是由统一的数据仓库提供标准明细和公共汇总,再由数据集市按主题加工出更贴近应用的数据。
如果没有统一数仓,各部门可能各自抽数、各自加工,短期看很灵活,长期会产生指标不一致、重复开发、血缘不清和质量难追溯等问题。
常见分层含义
ODS 通常是操作数据层,保存从业务系统同步过来的原始或轻度处理数据,尽量保留源系统结构和变更痕迹。DW 是数据仓库的总体概念,在具体分层中常被拆成多个细层。
DWD 是明细数据层,重点完成清洗、标准化、去重、字段规范和业务过程建模。DWM 常被理解为中间汇总层,用于沉淀可复用的轻度聚合或宽表,不同团队也可能用 DWM 表示不同含义。DWS 是服务汇总层,面向主题域形成稳定汇总数据。ADS 是应用数据层,直接支撑报表、接口、标签、推荐或经营分析。
数据流向示例
以订单分析为例,订单库、支付库和商品库的数据先进入 ODS。经过字段标准化、异常处理和关联补齐后,形成 DWD 订单明细、支付明细、商品快照等表。随后按用户、商品、渠道、日期等维度形成 DWS 汇总表,最终在 ADS 层输出日报、经营看板或专题分析表。
这种分层的好处是职责清晰。源数据变化主要影响 ODS 和 DWD;公共口径变化集中在 DWD 或 DWS;应用层可以快速响应业务需求,而不必每次都从原始数据重新加工。
分层设计注意事项
分层不是越多越好。小团队或简单场景可以合并部分层级,关键是保证数据来源清楚、口径稳定、复用方便。命名规范、主题域划分、分区策略、生命周期和质量校验也要同步设计。
数据仓库和数据集市的核心价值不是把表放到不同目录,而是通过分层和建模降低重复加工成本,让指标更可信,让分析更高效。


