数仓分层架构详解:ODS、DWD、DWS、DWT、ADS各层作用
数据仓库的分层架构是数据体系建设中的重要设计,下面我将详细讲解ODS、DWD、DWS、DWT和ADS各层的作用和特点。
1. ODS层(Operation Data Store) - 原始数据层
作用:
- 数据仓库的"缓冲区",保留原始数据不做过多处理
- 与源系统保持相同的粒度,结构基本一致
- 主要功能是数据抽取和初步清洗
特点:
- 数据保留时间较短(通常3-6个月)
- 数据结构与源系统基本一致
- 包含所有历史变更记录(全量或增量)
- 通常不做数据聚合和业务逻辑处理
典型操作:
- 数据抽取(ETL中的E)
- 基础数据清洗(去重、空值处理等)
- 数据格式标准化
2. DWD层(Data Warehouse Detail) - 明细数据层
作用:
- 对ODS数据进行清洗转换后的明细数据
- 保持与ODS相同的粒度,但数据质量更高
- 建立一致性维度,统一编码和口径
特点:
- 数据粒度与业务事务保持一致
- 完成数据标准化处理
- 建立完整的数据质量监控
- 通常按主题域组织数据
典型操作:
- 数据清洗(脏数据处理)
- 数据转换(编码统一等)
- 维度退化(将某些维度属性冗余到事实表)
- 数据分区(通常按时间)
3. DWS层(Data Warehouse Summary) - 汇总数据层
作用:
- 面向分析主题的轻度汇总数据
- 基于DWD层数据进行跨业务主题的汇总
- 为上层应用提供公共指标
特点:
- 数据轻度聚合(通常按天汇总)
- 面向分析主题而非业务过程
- 包含常用维度组合的预计算
- 减少重复计算,提高查询效率
典型操作:
- 按主题域汇总(用户、商品等)
- 常用指标预计算(UV、PV、GMV等)
- 跨业务过程关联
4. DWT层(Data Warehouse Topic) - 主题数据层
作用:
- 面向业务主题的深度汇总数据
- 包含全量历史数据和累积快照
- 支持长期趋势分析和画像分析
特点:
- 数据高度聚合(累积快照)
- 包含历史全量数据
- 支持长期趋势分析
- 通常用于用户画像、商品分析等
典型操作:
- 累积快照(如用户生命周期)
- 全量表(保留历史所有状态)
- 主题宽表(包含相关所有维度)
5. ADS层(Application Data Store) - 应用数据层
作用:
- 面向具体应用的数据集市
- 根据业务需求定制化加工
- 直接服务于报表、分析等应用
特点:
- 高度面向业务场景
- 数据模型可能不符合范式
- 包含派生指标和复杂计算
- 直接支撑前端应用
典型操作:
- 业务指标计算
- 复杂报表加工
- 数据可视化准备
- 数据API封装
分层架构的价值
- 清晰职责划分:每层有明确职责,避免混乱
- 数据质量保障:逐层提升数据质量
- 计算效率优化:避免重复计算
- 历史数据管理:不同层保留不同时间范围数据
- 灵活扩展性:新需求只需在相应层次调整
这种分层架构既保证了数据从原始状态到应用状态的完整流转过程,又通过逐层加工提高了数据质量和可用性,是大型数据仓库系统的典型设计模式。
2万+

被折叠的 条评论
为什么被折叠?



