四、数据仓库分层架构
分层思想和标准
- 数据从的特点是本身不生产数据,也不最终消费数据。按照数据流入流出数仓的过程进行分层就显得水到渠成。
- 每个企业根据自己的业务需求可以分成不同的层次。但是最基础的分层思想,理论上分为三个层:操作型数据层(ODS)、数据仓库层(DW)和数据应用层(DA)。
- 企业在实际运用中可以基于这个基础分层之上添加新的层次来满足不同的业务需求。
ODS层
- 操作型数据层:也称之为源数据层、数据引入层、数据暂存层、临时缓存层。
- 此层存放未经过处理的原始数据至数据仓库系统,结构上与源系统保持一致,是数据仓库的数据准备区。
- 主要完成基础数据引入到数仓的职责,和数据源系统进行解耦合,同时记录基础数据的历史变化。
DW层
数据仓库层,由ODS层数据加工而成,主要完成数据加工整合,建立一致性的维度,构建可复用性的面向分析和统计的明细事实表,以及汇总公共粒度的指标,内部具体划分如下:
- 公共维度层(DIM):基于维度建模理念思想,建立整个企业一致性维度。
- 公共汇总粒度事实层(DWS、DWB):以分析的主题对象作为建模驱动,基于上层的应用和产品的指标需求,构建公共粒度的汇总指标事实表,以宽表化手段物理化模型。
- 明细粒度事实层(DWD):将明细事实表的某些重要维度属性字段做适当冗余,即宽表化处理。
DA层
数据应用层:面向最终用户,面向业务定制提供给产品和数据分析使用的数据。
包括前端报表、分析图表、KPI、仪表盘、OLAP专题、数据挖掘等分析。
分层好处
-
清晰数据结构
每一个数据分层都有它的作用域,在使用表的时候能更方便地定位和理解。 -
数据血缘追踪
我们最终给业务呈现的是一个能直接使用的业务表,但是它的来源有很多,如果有一张来源表出问题了,我们希望能够快速准确地定位到问题,并清楚它的危害范围。 -
减少重复开发
规范数据分层,开发一些通用的中间层数据,能够减少极大的重复计算。