N3. 星型模式与多维数据集
一. 维度表特性
代理键与自然键
问题一:怎么保证维度表和事实表代理键的一致性
问题二:代理键的格式怎么设置?书中提供的技术方案有为自然键附件一个序列号或为自然键增加一个时间戳
丰富的维度集合
提供丰富和全面的维度属性集合,每个新增的属性都将会显著地提高分析的可能性.带有大量属性的维度表将大大增加分析的价值.可以将它们理解为“宽度”.
- 公共组合: 在操作型系统中,经常采用的方法是将数据元素尽可能分解为构成其内容的多个组件。采用这种方法,可以将不同的组件按照需要加以合并。例如,客户姓名可以分解并以 first_name middle_initial last_name的方式存储.在需要时可以将这些属性加以组合形成全名.
- 代码与描述符:在操作型系统中,通常将某一领域中的可列值以代码的形式表示,同时使用另外的表来描述这些代码.从分析应用的角度考虑,代码和描述都是可用的维度
- 标志及标志值:如果列的值为布尔类型,那么通常将它当作标志
- 多列组合字段:操作型系统通常包含由多个部分组合而成的字段列,每个部分各自具有不同的含义.账号代码就是一个典型的例子,其构成包括公司标识符,账号代码,分类账户代码等等
- 带有数字值的维度
- 行为维度与混合属性
维度表中的组合维度
- 基于相似性组合维度
- 无相似性的杂项维度
- 雪花模式及支架表
- 冗余带来的好处:在进行维度设计时应该容忍冗余的存在.详尽地存储每一个维度属性将大大提高系统性能,增强可用性,确保在多个应用中保持一致性.规范化理论更适合于操作型系统而不是分析型系统.
二. 事实表特性
事实表记录信息的细节程度被称为粒度.清楚地区分每个事实表的粒度,避免包含不同粒度的情况产生非常重要.事实表的行不可能将每一个维度值的组合都包含.相反,它们体现出一种称为稀疏性的特性.有时,事实表包含一个或多个退化维度.
事实表与过程
事实表是度量业务过程的引擎.事实表存储用来描述过程的详细度量.事实采用外键为每个度量提供维度环境
获取事实
- 获取所有度量: 开展维度设计时,每一个事实表都描述了一个业务过程.它应该提供一个相关度量的完整集合,即使这样做会存在冗余.无论采用何种工具开发查询和报表,明确地存储每一事实可以确保度量的一致性.由于大多数事实是数字型的,因此使得增加列带来的增量开销被最小化
- 非可加事实: 尽管事实表存储的事实具有特定的细节级别,事实仍然可以用不同的汇总方式.这样发方式确保事实能够与多种维度组合回答不同的业务问题
粒度
稀疏性
记录在事实表中的行表达了业务活动的发生情况,这意味着事实表中的行没有包含所有可能的维度值组合.出现在事实表中的组合数量远远小于可能存在的组合数量.是hi鼠标的该项特性被称为稀疏性.
退化维
三. 缓慢变化维
变化类型1
- 重写维度值
- 先前事实存在的环境发生了变化
- 不能维护维度历史
变化类型2
- 插入新维度行
- 保留事实的历史环境
数据仓库工具箱中记录了更多了缓慢变化维的解决方案
四. 多维数据集
维度模型并不总是采用关系数据库实现.多维数据库,或称为MDB,以一种称为多维数据集的方式存储维度信息.多维数据集的基本概念背后思想是通过预先计算维度值和事实值的方式获得各种组合值.作为主要的数据存储,多维数据集代替星型模式用于存储维度数据.作为一种衍生的数据存储,该方法弥补了星型模式的不足
?怎么查询多维数据集,?维度过多的组合怎么办?
网友评论