|
|
|
|
移动端

1.3.2 用于度量的事实表

《数据仓库工具箱(第3版)--维度建模权威指南》第1章数据仓库、商业智能及维度建模初步,本章将详细考察数据仓库及商业智能的主要目标,辨析DW/BI管理者与杂志出版商各自责任中存在的不可思议的相似之处。本节为大家介绍用于度量的事实表。

作者:王念滨/周连科/韦正现 译来源:清华大学出版社|2015-12-10 16:28

年前最后一场技术盛宴 | 1月27日与京东、日志易技术大咖畅聊智能化运维发展趋势!


1.3.2  用于度量的事实表

维度模型中的事实表存储组织机构业务过程事件的性能度量结果。应该尽量将来源于同一个业务过程的底层度量结果存储于一个维度模型中。因为度量的数据量巨大,所以不应该为满足多个组织功能的需要而将这些数据存放在多个地方。应该允许多个组织的业务用户访问同一个单一的集中式数据仓库,确保他们能在整个企业中使用一致的数据。

"事实"这一术语表示某个业务度量。从市场角度观察,记录销售的产品的数量单位,以及每种产品在每个销售事务中涉及的销售额。当产品被扫描时可以获取这些度量,如图1-2所示。

事实表中的每行对应一个度量事件。每行中的数据是一个特定级别的细节数据,称为粒度。例如,销售事务中用一行来表示每个卖出的产品。维度建模的核心原则之一是同一事实表中的所有度量行必须具有相同的粒度。牢记建立事实表时使用统一的细节级别这一原则可以确保不会出现重复计算度量的问题。

注意:

物理世界的每一个度量事件与对应的事实表行具有一对一的关系,这一思想是维度建模的基本原则。其他工作都是以此为基础建立的。

最实用的事实是数值类型和可加类型事实,例如,美元销售额。本书以美元作为标准货币单位,以使所有的实例更具有实际意义--如果您使用的不是美元,可以替换为本地货币。

可加性是至关重要的,因为BI应用不太可能仅检索事实表的单一行。常见的情况是,BI应用往往一次需要检索成百上千,甚至百万级别的事实表行。处理如此多行数据的最有用的操作是将它们加到一起。无论用户如何分割图1-2中的数据,都会将销售数量和销售额度汇总为有效的合计。可能也会遇到一些半可加,甚至是不可加的事实。半可加事实(例如,账户节余)不能按时间维度执行汇总操作。不可加事实(例如,单位价格)不可相加。面对这种情况时,不得不进行计数或者取平均值操作,或者简化为一次输出一个事实行,当然当事实表包含海量数据行时,执行这种操作是不现实的。

事实通常以连续值描述,这样做有助于区分到底是事实还是维度属性的问题。在本书实例中,美元销售额事实是连续值,这样它可以在一定范围内表示实际可能存在的所有值。必须面向市场,研究度量,以确定其度量值到底应该是什么。

理论上,以文本方式表示度量事实是可行的。然而,很少采用这种方式。多数情况下,文本型度量是对某些事情的描述,来源于离散值列表。设计者应该尽最大可能将文本数据放入维度中,将它们有效地关联到其他文本维度属性上,以减少空间开销。不要在事实表中存储冗余的文本信息。除非对事实表中的每个行来说,其文本是唯一的,否则,应将其放入维度表中。准确的文本事实比较少见,因为文本事实存在不可预测性,例如,自由文本注释,几乎没有对其进行分析的可能性。

考虑图1-2表示的简单事实表,如果给定产品没有销售活动,则不要在表中插入任何行。不要试图以0表示没有活动发生来填充事实表,这些0将会占据大量的事实表。仅将发生的活动放入事实表中,事实表将变得非常稀疏。尽管存在稀疏特性,事实表仍然占据维度模型消耗空间的90%甚至更多。从行的数量来看,事实表趋向于变长。从列的数量来看,事实表趋向于变短。鉴于事实表占据大量空间的实际情况,应该仔细考虑对事实表空间的利用问题。

通过对本书设计的实例的分析,您将发现所有事实表的粒度可划分为三类:事务、周期性快照和累积快照。事务粒度级别的事实表最常见。第3章将介绍事务性事实表。第4章将介绍周期快照和累积快照。

一般事实表具有两个或更多个外键(参考图1-2中的外键概念)与维度表的主键关联。例如,事实表中的产品键始终与产品维度表中的特定产品键匹配。当事实表中所有键与对应维度表中各自的主键正确匹配时,这些表满足参照完整性。可以通过维度表使用连接操作来实现对事实表的访问。

事实表通常有包含外键集合的主键。事实表的主键常称为组合键,具有组合键的表称为事实表。事实表表示多对多关系。其他表称为维度表。

通常几个维度一起唯一标识每个事实表行。当确定了所有维度中唯一标识事实表行的子集后,其他维度使用事实表行的主键的单一值。换句话说,其他维度只是参与其中。

喜欢的朋友可以添加我们的微信账号:

51CTO读书频道二维码


51CTO读书频道活动讨论群:342347198

【责任编辑:book TEL:(010)68476606】

回书目   上一节   下一节
点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

超级网管员——网络设备

本书深入细致地介绍了用于构建网络的最重要的硬件设备——交换机、路由器、安全设备和无线设备,涵盖了原理、参数、分类、适用、规划、接口...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊