当前位置:文档之家› 数据仓库_6_多维建模

数据仓库_6_多维建模


2.
库存事务

记录影响库存水平的主要因素,如:商品的进/出仓库事务等 每个事务(分列项)对应事实表中的一行
3.
库存累积快照

每一件商品在事实表中都有一行,用于记录该商品的分发历史,直至 其离开仓库为止
2015/6/3
Data Warehouse
29
库存模型 - 周期库存快照

目标

确保合适的商场在合适的时间中存在合适的商品 可最大限度地减少脱销现象,并减少存货维护的总体 开销
四步维度建模
业务处理过程 粒度 维度 事实(度量值)
2015/6/3
:零售商场的库存 :每个商场每天每种商品的库存 :最初的维度选择(日期,商场,商品) :库存数量
Data Warehouse 30
库存模型 - 周期库存快照
日期维度
日期关键字 日期属性…
事实表 日期关键字 产品关键字 商场关键字 现有数量
产品维度
产品关键字 产品属性…
商场维度 商场关键字 商场属性…
商场周期库存快照模型


‘商场’维也可以被替换为‘货栈’维 也会有新的维度表和维度属性加进来
Data Warehouse 31
2015/6/3
库存模型 - 周期库存快照

1 商品的‘库存’事实表与‘销售’事实表的区别

销售事实表是稀疏的

日期关键字(FK) 产品关键字(FK) 商场关键字(FK) 销售量 销售额

可以由外关键字的组合构成事实表 的主关键字(Primary Key)
Data Warehouse 5
2015/6/3
6.1 维度建模初步

维度表

维度表是事实表的查询入口,为用户提供了使用 数据仓库的接口。 维度表中的维度属性通常用于定义事实表上的查 询条件,也可作为定义报表和统计查询的列。 维度表的定义原则

在销售事实表中记录每天实际发生的商品销售情况

库存事实表则是稠密的

而库存事实表则需要记录每天、每种商品、在每个商场的库存 情况(不管是否发生了实际的销售事实) 即使某个产品在某个时期是零库存,也要在事实表中生成相应 的度量值为 0 的行

2015/6/3
Data Warehouse
32
库存模型 - 周期库存快照
2015/6/3
Data Warehouse
8
6.1 维度建模初步
‘产品’维度表 产品关键字(PK) 食物类型描述 产品描述 重 量 SKU编号 重量单位 商标描述 储藏类型 分类描述 货架类型 部门描述 货架宽度 包装类型描述 货架高度 包装尺寸 货架深度 含脂量描述 ……
Data Warehouse 9

可以存放5到10年的日期维度值

日期维度中的属性 日历日期编号 日历周编号 日历月编号 财政月日编号 周末指示符 月末指示符
Data Warehouse
日期关键字(PK) 日期完全描述 星期 纪元日编号 纪元周编号 纪元月编号
2015/6/3
日历周结束日期 年度日历周数 日历月名 年度日历月数 日历年月(YYYYMM)
2015/6/3
Data Warehouse
20
模型的演化

维度变得具有更多的粒度性

可能需要重建新的维度表和事实表

全新数据源的加入,会同时牵涉现存的维度和不 能预见的新维度

创建新的事实表和维度表
2015/6/3
Data Warehouse
21
6.2.1 案例之一:零售营销

维度表中关键字的设计
库存模型 - 周期库存快照

2 半加型事实 (Semiadditive Facts)

只在部分维度上具有可加性的度量值被称为‘半加型 事实’ 在商品营销中,绝大部分的度量值在所有的维度范围 内都具有极好的可加性。


在库存快照模型中,‘库存量’可以跨‘产品’或 ‘商场’进行汇总(具有可加性),但不具有跨‘日 期’的可加性。

来源:数据的入口

前台的POS机

后台的货物入库

目的:管理决策需要

定价
促销
2015/6/3
Data Warehouse
13
6.2.1 案例之一:零售营销
选取业务处理

考虑:在什么促销条件下,在什么样的日子里,在什 么商店,正在销售什么样的商品?
定义粒度

POS事务的单个商品条目 最初粒度的选择与可以执行的分析操作有关
库存模型 - 周期库存快照

扩充的事实表

库存数量(持有量,现有量) 销售量
成本核算值
最新售价核算值
在三个维度之间都是可加的

处于同一张事实表中的上述度量值需要具有统一 的统计粒度
2015/6/3

事实表的粒度类型:事务(细节),周期快照,累积快照
2015/6/3
Data Warehouse
3
6.1 维度建模初步

事实表 - 度量值

最常用的度量值:数值类型

可做加法运算(非常重要)
可沿着某些维度做加法运算(半加性质)
不能做加法运算(非加性质)

计数统计 计算平均值 取样统计
18
维度设计

退化维度

维度表为空,具体的维度值直接存放在事实表中。例 如:

事务编号 订单编号 发票编号 提货单编号 ……
2015/6/3
Data Warehouse
19
模型的演化

模型的演化

新的维度属性

新的维度

在事实表中填加新的外关键字

新的度量值

填加新的度量值属性 事实表的粒度考虑

很少采用文本形式的度量值

文本信息通常都放在维度表中,除非它对于事实表中的每一行 都是唯一的

度量值通常是一个可以连续取值的量
Data Warehouse 4
2015/6/3
6.1 维度建模初步

事实表 - 关键字

日销售情况事实表
每个事实表都有两个或两个以上的 外关键字(Foreign Key) 通过外关键字建立事实表与维表之 间的联系,从而可以通过维度表的 值来存取事实表中的度量值
1.
选取要建模的业务处理过程

分析需要
2.
定义业务处理的粒度

事实表中每一行的度量值的取值粒度
3.
选择事实表中的维度

确定维度表中的属性
4.
选择事实表中的度量值

分析对象 每一张事实表中可以有多个度量值
Data Warehouse 12
2015/6/3
6.2.1 案例之一:零售营销
需求分析

主要概念

商品值链 三种事实表模型

周期快照,事务,累积快照


半加型事实
增强型库存事实 数据仓库总线结构与矩阵 一致性维度与事实
Data Warehouse 25
2015/6/3
6.2.2.1 商品值链

值链:值链确定了企业主体活动的自然逻辑流程
2015/6/3
Data Warehouse
食物类型描述 重 量 重量单位 储藏类型 货架类型 货架宽度 货架高度 货架深度 ……
7
6.1 维度建模初步

维度表 - 维度属性

通常是文本数据,或者是离散数据 尽量减少使用编码属性

维度属性与度量值的区别

度量值:含有多种取值并可以参与统计运算的属性 维度属性:

离散的或取值不多的的属性; 取值不变或很少产生变化的属性; 从不参与统计计算但经常用作查询条件的属性
日销售情况事实表
日期关键字(FK)
产品关键字(FK) 商场关键字(FK)
销售量
销售额
2015/6/3
6.1 维度建模初步

事实与维度的融合

将一张事实表及其相关的若干张维表结合在一起可 以构成一个星型结构 产品维度
日销售情况事实表 产品关键字(PK) 产品属性……
日期维度 日期关键字(PK) 日期属性……

在稠密的周期库存快照事实表中,在每一天都需 要加入每一种商品在每一个商场的库存情况,这 将导致事实表的数据量过于庞大
解决办法


随着时间的推移可降低周期快照的频度,例如:

最近60天内的以天为粒度单位的周期快照 最近3年内的以周为粒度单位的周期快照
2015/6/3
Data Warehouse
33
其分析的依据是来自于每一步业务处理过程的事实表 从每一步业务处理过程的业务数据库中可以衍生出一 个或多个事实表

2015/6/3
Data Warehouse
28
6.2.2.2 库存模型

三种互补的库存模型
1.
周期库存快照


定期生成每种商品的库存水平(数量)
对于每一件商品,在事实表中都有若干行,以反映该商品在不同时期 的库存水平
第六章 多维建模 (Dimensional Modeling)
2015/6/3
1
6.1 维度建模初步

维度建模中的基本概念

事实表:存储主要实事 维度表:存放维成员的取值

事实与维度的融合

星型模型:维度表作为事实表的卫星 雪花模型:将星形模型中的维度表改造成星形模型 数据立方体
相关主题