WEB开发网
开发学院数据库DB2 交付有效且灵活的数据仓库解决方案:第2部分:仓库... 阅读

交付有效且灵活的数据仓库解决方案:第2部分:仓库设计和数据建模

 2010-05-14 15:00:30 来源:WEB开发网   
核心提示:数据集市的数据建模因为仓库终端用户直接与数据集市进行交互,所以数据集市的建模是捕获终端用户业务需求的最有效工具之一,交付有效且灵活的数据仓库解决方案:第2部分:仓库设计和数据建模(5),数据集市的建模过程取决于许多因素,下面描述了三个最重要的:数据集市的建模是终端用户驱动的,但与事实表相比时,这通常是不重要的,终端用户

数据集市的数据建模

因为仓库终端用户直接与数据集市进行交互,所以数据集市的建模是捕获终端用户业务需求的最有效工具之一。数据集市的建模过程取决于许多因素。下面描述了三个最重要的:

数据集市的建模是终端用户驱动的。终端用户必须参与数据集市的建模过程,因为他们显然是要使用该数据集市的人。因为您应期望终端用户完全不熟悉复杂的数据模型,所以应该将建模技术和建模过程作为整体进行组织,以便使复杂性对终端用户透明。

数据集市的建模是由业务需求驱动的。数据集市模型对于捕获业务需求十分有用,因为它们通常由终端用户直接使用,且易于理解。

数据集市的建模极大地受到了数据分析技术的影响。数据分析技术可以影响所选择的数据模型的类型及其内容。目前,有几种常用的数据分析技术:查询和报表制作、多维分析以及数据挖掘。

如果仅仅意图提供查询和报表制作功能,那么带有正规(normalized)或非正规(denormalized)数据结构的 ER 模型就是最合适的。维度数据模型也可能是较好的选择,因为它是用户友好的,并具有更好的性能。如果其目标是执行多维数据分析,那么维度数据模型就是这里的惟一选择。然而,数据挖掘通常在可用的最低细节级(level of detail)工作得最好。因此,如果数据仓库是用于数据挖掘的,就应该在模型中包含较低细节级(level of detail)的数据。

因为本文没有包括 ER 建模,所以本小节将讨论维度数据建模,这是数据集市设计中最重要的数据建模方法。

星型和雪花型模型

有两种基本的数据模型是可以在维度建模中使用的:

星型模式(或模型)

雪花型模型

星型模式已经成为一个公共术语,用于表示维度模型。数据库设计师长期使用术语“星型模式”来描述维度模型,因为结果结构看上去像一个星星。一些业务用户不习惯术语“模式”,所以他们接受听起来更加简单的术语“星型模型”。术语“星型模型”和“星型模式”是可以相互交换的。

星型模型是维度模型的基本结构。它通常有一个大型的中心表(称作事实表)和一组小型表(称作维度表),维度表以放射模式围绕事实表。

传统的 ER 模型具有均匀且平衡的实体样式和实体之间的复杂关系,而星型模型却是完全不对称的。维度模型中的事实表与其他所有维度表之间存在单一连接。

维度建模通常在收集了业务需求之后,首先指定事实和维度。初始的维度模型在外表上通常像星星一样,一个事实位于中心,一个级别上的多个维度则围绕在周围。雪花型模型是一个或多个维度的分解结果,它们自己有时具有层次结构。您可以将一个维度表中成员之间多对一的关系定义为一个单独的维度表,从而形成层次结构。

分解的雪花型结构很好地展示了维度的层次结构。雪花型模型易于数据建模师的理解以及数据库设计师用于维度的分析。然而,雪花型的结构看起来更复杂,并且可能趋于使业务用户用起来感到不如更简单的星型模型舒服。开发人员也可以选择雪花型,因为它通常节省了数据存储。考虑一个银行应用程序,其中针对一个维度有一个极其大型的帐户表。您可以选择通过不存储极其频繁重复的文本字段,而是将其一次性放置在一个子维度表中,节省该大小的表中的大量空间。

虽然雪花型模型不节省空间,但与事实表相比时,这通常是不重要的。大多数数据库设计师都不将节省空间作为选择建模技术的主要决策标准来考虑。

图 6. 星型模式结构示例

上一页  1 2 3 4 5 6 7 8  下一页

Tags:交付 有效 灵活

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接