交付有效且灵活的数据仓库解决方案:第2部分:仓库设计和数据建模
2010-05-14 15:00:30 来源:WEB开发网事实
事实表只包含用于引用维度表的 ID,以及用于测量所有维度成员变化或性能的测度。下一步就是将维度和测度组织成事实。这是以可以解决指定需求的方式将维度和测度进行分组的过程。
事实表的设计中要解决几个重要问题:
粒度(记录事实的细节级):如果要有效地分析数据,就必须都在同一粒度级别上。一般说来,您应该将数据放在最详细的粒度级别上。这是因为您无法将数据修改到您所决定设置的细节级上。但是,您总是可以上卷(汇总)数据以创建一个略粗的粒度级别的表。
相加性(要总结的测度的能力):测度分成三个类别:全相加的(fully additive)、非相加的(nonadditive)和半相加的(semiadditive)。一个非相加测度的例子就是百分率。您无法简单地将两个事实的百分率相加到一起,并产生有意义的结果。一个半相加测度的例子就是余额。虽然您可以将两个帐户的余额相加获得总的余额,但无法将同一帐户在两个不同时间点的两个余额相加。因为余额只是跨一些维度进行相加的,所以我们称之为半相加测度。将可以跨所有维度相加的值视作全相加的。当您考虑将在事实表上发生的可能汇总时,相加性就变得很重要。通常,全相加的测度是最理想的。当测度不是全相加的时,应考虑将它们分成其原子元素。
键选择:多维数据建模中的键选择是一个难题。它包含性能和易于管理之间的权衡(trade-off)。键选择主要适用于维度。您为维度所选择的键必须是事实的外键。维度键有两种选择:您可以分配一个任意键,或者使用操作系统中的标识符。任意键通常只是一个序列号,当需要一个新键时,就分配下一个可用的号码。
为了使用操作系统中的标识符惟一地表示维度,您有时需要使用一个复合键。复合键就是由多个列组成的键。任意键是一列,通常比操作派生的键要小。因此,任意键通常可以更快地执行连接。
键选择中的最后一个因素就是它对事实表的影响。在创建事实时,必须将每个维度的键分配给它。如果维度将带有时间戳的操作派生的键用于历史数据,那么在创建事实时,就没有附加工作。连接将自动发生。对于任意键或任意历史标识符,在创建事实时,就必须将一个键分配给事实。
分配键的方式有两种。一种就是维护操作和数据仓库的键的转换表。另一种就是存储操作键,并且在必要时,存储时间戳作为维度上的属性数据。
那么,选择就在任意键的更好性能和操作键的更易维护之间进行。性能提高多少和维护增加多少的问题就必须在您自己的组织中进行评估了。
无论做出什么选择,都必须在元数据中用文档记录生成它们的过程。该信息对于管理和维护数据仓库的技术人员来说是必要的。如果您所使用的工具没有隐藏连接处理,那么用户可能也需要理解这一点。
既然您理解了维度和事实表的处理,就让我们看一看真实世界的例子,以探索如何从业务需求中识别维度和测度。该例子只是对于一系列业务问题的基本分析。这些业务问题被定义为示例需求:
按照银行支行,本月客户的平均余额和交易数是多少?
按照支行、产品和地区汇总,要付给每位客户的年净利润和利息是多少?
百分之几的客户是盈利的?将他们按照支行、地区和年分类。
本年一位客户的总交易量是多少?
按照地区,最盈利的前 5 位产品是什么?
在最近 5 年里,最盈利的前 5 个支行是什么?
最盈利的客户的人口和地理特点是什么?
通过分析这些问题,我们就定义了需要满足需求的维度和测度(见表 1)。
表 1. 维度和测度表
维度和测度 | Q1 | Q2 | Q3 | Q4 | Q5 | Q6 | Q7 |
维度 | ? | ? | ? | ? | ? | ? | ? |
支行 | ?X | ?X | ?X | ? | ? | ?X | ?X |
地区 | ? | ?X | ?X | ? | ?X | ? | ?X |
客户 | ?X | ?X | ?X | ?X | ? | ? | ?X |
产品 | ? | ?X | ?X | ? | ?X | ? | ? |
时间 | ?X | ?X | ?X | ?X | ? | ?X | ? |
? | ? | ? | ? | ? | ? | ? | ? |
测度 | ? | ? | ? | ? | ? | ? | ? |
余额 | ?X | ? | ? | ? | ? | ? | ? |
交易量 | ? | ? | ? | ?X | ? | ? | ? |
交易数 | ?X | ? | ? | ? | ? | ? | ? |
净利润 | ? | ?X | ?X | ? | ?X | ?X | ?X |
所付利息 | ? | ?X | ? | ? | ? | ? | ? |
- ››灵活更改Windows 7“自动播放”设置
- ››灵活更改Win7系统“自动播放”设置
- ››有效促进网站排名权重的友情链接评定标准
- ››灵活运用ISA的链接转换功能:ISA2006系列之十三
- ››灵活配置DHCP服务器 解决更改IP地址问题
- ››灵活有效的数据仓库解决方案:第1部分:客户互动和...
- ››交付有效且灵活的数据仓库解决方案:第2部分:仓库...
- ››灵活有效的数据仓库解决方案,第3部分:设计并实现...
- ››有效使用 Optim Query Tuner 工具进行 SQL 查询语...
- ››灵活使用Word 2003文档窗口的滚动条
- ››有效加快Windows 7系统的运行速度
- ››灵活设置Windows Server 2008应对系统管理谜局
更多精彩
赞助商链接