DW ODS DWD DWM DWS ADS
DW
Data warehouse(可简写为DW或者DWH)数据仓库,是在数据库已经大量存在的情况下,它是一整套包括了etl、调度、建模在内的完整的理论体系。
数据仓库的方案建设的目的,是为前端查询和分析作为基础,主要应用于OLAP(on-line Analytical Processing),支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。目前行业比较流行的有:AWS Redshift,Greenplum,Hive等。
数据仓库并不是数据的最终目的地,而是为数据最终的目的地做好准备,这些准备包含:清洗、转义、分类、重组、合并、拆分、统计等
分层的好处
- 清晰数据结构:让每个数据层都有自己的作用和职责,在使用和维护的时候能够更方便和理解
- 复杂问题简化:将一个复杂的任务拆解成多个步骤来分步骤完成,每个层只解决特定的问题
- 统一数据口径:通过数据分层,提供统一的数据出口,统一输出口径
- 减少重复开发:规范数据分层,开发通用的中间层,可以极大地减少重复计算的工作
ODS|数据运营层
Operation Data Store 数据准备区,也称为贴源层。数据源中的数据,经过抽取、洗净、传输,也就是ETL过程之后进入本层。
CDC MQ 接入后进入本城
职责:存储来自不同源系统的原始数据,保持数据的原始性和完整性。
设计思路:ODS层通常设计为与源系统表结构相似,以便于数据的快速导入和更新。数据在这一层不进行任何业务逻辑处理
DW 数据仓库层
DWD 数据细节层
data warehouse details,DWD
保持和ODS层一样的数据颗粒度;主要是对ODS数据层做一些数据的清洗和规范化的操作,比如去除空数据、脏数据、离群值等。
为了提高数据明细层的易用性,该层通常会才采用一些维度退化方法,将维度退化至事实表中,减少事实表和维表的关联。
DWM 数据中间层
Data Warehouse Middle,DWM;
在DWD层的数据基础上,对数据做一些轻微的聚合操作,生成一些列的中间结果表,提升公共指标的复用性,减少重复加工的工作。
简答来说,对通用的核心维度进行聚合操作,算出相应的统计指标
DWS 数据服务层
Data Warehouse Service,DWS;
DWM上的基础数据,整合汇总成分析某一个主题域的数据服务层,一般是宽表,用于提供后续的业务查询,OLAP分析,数据分发等。
一般来说,该层的数据表会相对较少;一张表会涵盖比较多的业务内容,由于其字段较多,因此一般也会称该层的表为宽表。
DIM | 维度层
(Dimension Table)或维表,有时也称查找表(Lookup Table)
职责:存储维度数据,为DW层的事实表提供上下文信息。
设计思路:维度表包含描述性信息,如时间、地点、产品等,用于对事实表中的数据进行分类和分析。维度表设计应保证数据的一致性和可查询性。
Fact Table | 事实表
事实表是指存储有事实记录的表,比如系统日志、销售记录等。事实表的记录在不断地增长,比如电商的商品订单表,就是类似的情况,所以事实表的体积通常是远大于其他表。
ADS | 数据应用层
Application Data Service,ADS;
一般会存放在ES、Redis、PostgreSql等系统中供线上系统使用;也可能存放在hive或者Druid中,供数据分析和数据挖掘使用,比如常用的数据报表就是存在这里的。
职责:提供针对特定应用或业务需求优化的数据视图和聚合数据,支持高效的数据查询。
设计思路:ADS层根据业务需求设计,可以是高度汇总的数据集、数据立方体或特定业务逻辑的数据集合。这一层的数据通常是为了满足特定的报表或分析工具的需求而设计。
Loading...