数据仓库工具箱-第2章

本文详细介绍了Kimball维度建模方法,包括选择业务过程、声明粒度、确认维度和事实,以及事实表和维度表的技术基础。重点讨论了事实表的类型如事务事实表、周期快照事实表和累计快照事实表,以及维度表的结构和键的处理。此外,提到了维度建模中的重要概念,如一致性维度集成、处理缓慢变化维度属性、维度层次关系等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

2.1 Kimball维度建模基本概念

与业务代表沟通需求:关键性能指标、竞争性商业问题、决策制定过程、分析需求

与基础源数据系统RD沟通:访问数据可行性、功能设计及交互、数据留存

维度设计过程的四个步骤:1、选择业务过程 : 业务过程事件建立或获取性能度量,并转换为事实表中的事实。过程定义了特定的设计目标以及对粒度、维度、事实的定义。每个业务过程对应企业数据仓库总线矩阵的一行。

2、声明粒度:最细粒度保留; 上卷汇总粒度对性能更有好处,但是需要猜测业务公共问题,设计难度高。不要在同一个事实表中混用多种不同的粒度。

3、确认维度:是用于过滤及分类事实的描述性属性;清楚设计事实表的粒度就可以将所有存在的维度按粒度区分开;当维度表与事实表关联时,任何情况下都应使维度保持单一值,维度的设计决定了业务分析的丰富度和准确性。

4、确认事实:事实表的一行对应一个物理可观察的事件

维度模型的扩展:

1、事实与维度粒度一致,创建新列(添加新属性)

2、通过在维表上新增更细粒度的属性,使事实表更原子化(重置事实表)

2.2 事实表技术基础

事实表的设计完全依赖于物理活动,不受可能产生的最终报表的影响。

事实表包含度量、外键(用作关联维度)、退化维度、日期/时间戳。

可加事实:支持任意维度汇总,例:借款金额;

半可加事实:仅支持部分维度汇总,例:本金桶余额;

不可加事实:不支持任何维度汇总,例:利率; 批核率; 但是对于批核率可以特殊处理为分子分母保留(从不可累加变为可累加,这种设计通常发生在OLAP多维数据库层);

事务事实表:仅当存在度量时才会建立行,度量事实必须与事务粒度保持一致,例:申请授信表。

周期快照事实表:汇总特定周期的多个度量事件,包含许多事实(与事实表粒度一致都可以存在),即使周期内没有活动,也会默认插入0或空值,例:授信vintage中间表。

累计快照事实表:每行数据,汇总了发生在过程开始和结束之间,可预测步骤内的度量事件。通常关键步骤都包含日期外键。在开始节点发生时,会插入一行,当过程发生时,会修改这条记录。

聚集事实表:将原子粒度上卷为常用的聚集层次表,类似数据库索引,提高查询性能。

合并事实表:将来自多个业务过程,相同粒度的事实合并为单一的合并事实表,会增加ETL处理过程的负担,但降低了BI应用的分析代价使其更快捷,适用于经常需要共同分析的多过程度量。

2.3 维度表技术基础

维度表结构:每个维度表由单一主键列,可作为与之关联的任何事实表的外键。维度表列较多(宽),属于扁平型非规范表,低粒度文本属性。

自然键、持久键、超自然键、维度代理键:即不使用来自操作型系统的自然键,以避免多源兼容性问题、系统主键异常、跟踪变化导致需要大量维度行等问题。维度代理键是无语义的整型主键,按顺序分配的简单整数,从1开始。(日期维度不需要代理键,因为日期是可预测且稳定的),避免受业务规则影响,导致DW/BI表主键不唯一或者对应的值发生变化。(针对关户又开户的情况,要通过持久性超自然键,也是从1开始的整数,当做同一个用户)

维度退化:将常用维度放到事实表里,清楚表明没有关联的维度表,退化维度常见于交易和累计快照事实表中。

非规范化扁平维度:打破操作型数据库的设计,将多对一打平,这类非规范化维度的目标是简化及速度

2.4 使用一致性维度集成

-暂无

2.5 处理缓慢变化维度属性

-暂无

2.6 处理维度层次关系

-暂无

2.7 高级事实表技术

-暂无

2.8 高级维度技术

-暂无

2.9 特殊目的模式

-暂无

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值