维度数据模型简称 维度模型(Dimensional modeling, DM),是一套技术和概念的集合,用于数据仓库设计。不同于关系数据模型,维度模型不一定要引入关系数据库。 在逻辑上相同的维度模型,可以被用于多种物理形式,比如维度数据库或是简单的平面文件。根据数据仓库大师Kimball的观点, 维度模型是一种趋向于支持最终用户对数据仓库进行查询的设计技术,是围绕性能和易理解性构建的。尽管关系模型对于事务处理系统表现非常出色,但它并不是面向最终用户的。
事实和维度是两个维度模型中的核心概念。事实表示对业务数据的度量,而维度是观察数据的角度。事实通常是数字类型的,可以进行聚合和计算,而维度通常是一 组层次关系或描述信息,用来定义事实。 例如,销售金额是一个事实,而销售时间、销售的产品、购买的顾客、商店等都是销售事实的维度。维度模型按照业务流程领域即主题域建立,例如进货、销售、库存、配送等。不同的主题域可能共享某些维度,为了提高数据操作的性能和数据一致性,需要使用一致性维度,例如几个主题域间共享维度的复制。术语“一致性维度”源自Kimball,指的是具有相同属性和内容的维度。
维度数据模型建模过程
维度模型通常以一种被称为星型模式的方式构建。所谓星型模式,就是以一个事实表为中心,周围环绕着多个维度表。还有一种模式叫做雪花模式,是对维度做进一步规范化后形成的。本节后面会讨论这两种模式。一般使用下面的过程构建维度模型:
- 选择业务流程