数据中台建设(从方法论到落地实战)-读书笔记4

4 统一数据模型:让数据资产化

4.1 高效数据模型,让数据好用起来

4.1.1 统一数据模型的意义

统一数据模型通过对数据进行抽象和分层,构建多层数据模型,并实现统一的指标体系,让每一层数据模型之间的血缘关系清晰可见,把常见的数据指标放到应用层,把明细数据放到底层,屏蔽了底层的数据细节,大大地降低了数据的重复开发,极大的提高了数据的使用效率和易用性。

4.1.2 统一数据模型具体做什么

(1)实现数据的汇聚和集成,满足业务发展的差异化数据需求

(2)实现数据分层和建模,提高数据使用效率

分层设计的好处是可做到数据结构清晰、数据指标统一、血缘关系清洗、快速定位数据异常、减少重复开发、屏蔽异常的原始数据和DWD层的细节。一般数据仓库可以分为以下6层:

  • ODS层(贴源层):把从业务层中抽取的数据放到ODS层
  • DWD层(明细层):对原始数据进行格式转换和标准化,解决数据格式、数据质量和数据完整性等问题。
  • DWS层(数据汇总层):对DWD层数据基于主题进行高度汇总,抽象业务需求,获得基于主题的大宽表。
  • APP层(数据应用层):加工业务需要的个性化指标以满足数据应用和专题分析的需求。
  • DIM层(数据维表层):主要存储数据仓库公用的数据维度表、码表和配置表。
  • TMP层(数据临时层):把临时表存放到TMP层进行统一管理。该层主要用于存储数据仓库的临时表和临时数据。可为这些表设置一定的生命周期,定期自动进行删除以释放存储资源。

(3)数据持久化存储,有效地反映历史数据变化

ODS层和DWD层持久化存储的好处是保证不受业务系统数据错乱的干扰,也不用担心数据的丢失问题,可以持续提供最真实的业务数据支持业务部门的数据需求。另外,由于数据的持久化存储,数据仓库不仅记录时点数,还记录历史数据,能有效地反映历史数据的变化过程,便于数据的追溯和趋势分析。

4.1.3 如何建设统一数据模型

(1)范式建模

第三范式限制的优点是消除数据的不一致性、数据冗余度低,缺点是造成表非常多,很多指标的获取都需要对不同的表进行关联聚合操作,效率较低。另外,范式建模需要进行主题和实体抽象,对建模人员的要求很高,建模人员需要对业务和数据非常熟悉,项目实施难度大、周期长。

(2)维度建模

维度建模和范式模型有以下连个显著区别:

  • 目标不同,维度建模的设计目标是敏捷、高效地响应业务的分析需求。
  • 范式要求不同,维度建模的数据表设计不必严格遵守范式要求,尤其是第三范式的要求
维度建模的基本要素包含事实表和维度表。事实表主要用于对分析主题的度量,一般用于记录和度量行为或事件。由于事实表记录的是分析主题的度量,其记录行数会显著增加。事实表的行数一般很多,列数很少。维度表一般行数有限,行数增速较慢,而维度比较丰富。
星型建模一个事实表可与多个维度表进行关联,多个维度表之间围绕事实表呈现星型展开。维度表之间不可关联。
雪花建模雪花建模与星型建模的主要差异在于当维度太多时,为了达到范式要求,雪花建模允许将维度表拆解为多个子维度表,通过外键进行关联。
星座建模

星座建模打破了多个维度表围绕单个事实表的形式,允许出现多个事实表和多个维度表。

4.2 对维度建模进一步探索-维度建模设计过程

(1)梳理业务流程

确定关键节点,明确核心实体、事件和关系。

(2)定义事实表的粒度

根据每个关键节点确定事实表的粒度。事实表的粒度就是如何描述事实表的一行数据。

(3)确定事实表的维度

维度是对事实表当行内容的描述性信息,常见的内容描述维度有时间、产品、地域、供给侧、客户、事件类型等。

(4)确定事实表的度量

首先需要明确所需要的度量的类型,然后根据不同的类型确定所需要的具体的度量。度量有很多种类型,如固定的、可加的、不可加的、需要复杂计算得到的。

(5)退维

适当地将常用的维度进行退维,将其放到事实表中,这样就避免了过多的关联操作,有效地提高了对事实表的查询和分析效率。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值