【数仓 概念理解】数据仓库建设:数据分层

数据分层的目的是更好的管理数据,对数据能有一个更加清晰的掌控。数据分层使的数据具有清晰的数据结构,便于进行数据血缘追踪,能够把复杂问题简单化,减少重复开发,屏蔽原始数据的异常和业务的影响。每个企业或组织由于各自业务、规范、目标不尽相同,分层的策略可能会有一些区分,通用的数据分层结构如下图所示。

DIM(维表层) 所有维度表的集合
DM(数据集市层) 面向数据应用,提供决策支撑
DWS(数据服务层) 面向业务分析-维度建模-解决灵活分析
DWD(数据明细层) 面向业务过程-3NF建模-解决上层分析的可复用性
ods(数据存储操作层) 源数据采集+保留数据的历史变化快照

概念讲解:
ODS 层
数据存储操作层,是最接近数据源中数据的一层,数据源中的数据经过 ETL 之后装入本层,一般来讲,为了追溯数据的问题,因此,本层数据一般不做过多的数据清洗工作,原封不动的接入原始数据即可。

DWD 层
数据明细层,该层一般保持和 ODS 层一样的数据粒度,并且提供一定的数据质量保证(统一业务过程、基于业务过程清洗数据,完备数据)。同时,为了提高数据明细层的易用性,该层会将一些维度冗余到事实表中,减少事实表和维度的关联,提高查询效率。

DWS 层
数据服务层,按照业务划分,基于 DWD 层的数据,做一些聚合操作,生成字段比较多的宽表,提升公共指标的复用性,减少重复加工,用于提供后续的业务查询。

DM 层
数据集市层,基于 DW 层数据,根据业务需求实现数据模型,一般会跨多个主题域,主要提供给数据产品和数据分析使用的数据,一般存储在 ES、Redis、HBase 等存储中,供线上系统使用。

DIM 层
维表层,维表层就是所有维度表的集合。

开发规范:

业务入仓的数据表,位于 ods 库,清洗后的明细数据位于 dwd 库,维度数据位于 dim 库,而轻度汇总的数据位于 dws 库;创建任务加工数据写入对应的表,并设置调度规则。

©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页