数据仓库数据库设计方法---关系模型和多维模型比较分析

 

  数据仓库中普遍采用的数据库设计模型有两种:关系型和多维型。广泛认为在数据仓库的设计方法中关系模型是“Inmon”方法而多维模型是“Kimball”方法。数据库

先来看下关系模型,关系型数据以一种称为“标准化”的形式存在。数据标准化是指数据库设计会使数据分解成很是低的粒度级,标准化数据以一种孤立模式 存在,这种状况下对数据表里的数据关系要求很严格。通常遵循3NF范式。采用关系型设计的数据库通常具备较强的灵活性和多功能性(能够支持数据的多种视 图)。数据库设计

再来看下多维模型,多维模型通常有星型模式、雪花模式、混杂模式(又叫星系模式)。多维模型设计的最大优势在于访问的高效性。post

两种模型的区别性能

做为数据仓库设计的基础,星形链接和关系型结构二者之间存在不少不一样。最重要的区别是在灵活性和性能方面。关系模型具备高灵活性,可是对用户来讲在性能方面却不是很理想的。多维模型在知足用户需求方面是很是高效的,可是灵活性很差。优化

另外一重要区别在于设计的范围不一样。必然地,多维设计只能在有限的范围内进行,也就是说,数据库设计只能在一组请求过程下获得最优化。若是全部不一样组请求所有加入到设计当中,最优化变得毫无心义。设计

当使用关系模型时,在性能方面没有特别的优化方法。既然关系模型要求数据以最低粒度级存储,那么就能够无限制地添加新数据。很显然,添加数据到关系 模型永远也不会中止。正由于这样,关系模式适合大范围数据(如一个企业模型),而多维模型适用于小范围数据(如一个部门或甚至一个子部门)。接口

区别的起源资源

关系环境是经过起源数据模型设计出来的。多维模型是根据最终用户的请求塑造的。换句话说,关系模型经过纯数据模型和其余模式设计,而多维模型经过处理请求塑造。同步

在适用性方面:因为关系模型经过抽象数据造成,因此模型自身很是灵活。但这种灵活性,对于直接数据访问的执行却不是最优化的。若是想获得一个高性能的关系模型,最佳方法是从模型中抽取出数据,并从新构造一种适合于快速访问的模式。it

         多维模型在直接访问数据方面是快速而高效的。从体系结构观点来看,在数据仓库设计基础方面关系模型是更好地支持数据仓库的模式,其缘由是,数据仓库须要根 据不一样的议程和多种观察数据的方式来支持许多不一样的用户组。也就是说,数据仓库对于访问已给定的用户并非最佳的。相反,数据仓库能够以多种方式支持多个 不一样的用户。

关系模式,数据以最低粒度级和标准化形式存储;关系表间的关系已经定义好而且包含一个含有外键的关键字表;新表能够对关系表中的基本数据集定义新的 汇总和筛选标准;也就是说能够很简单以一种形式建立关系表,再以另外一种形式从新塑造这些表,这样作对于数据仓库环境来讲是很是理想的。

此外,关系模式支持未来未知的需求、支持适度变化的需求方面具备多维模型没法比拟的优点。

所以根据上面讨论过的缘由能够看出:关系模型对数据仓库是理想的基础,而星形链接对于数据集市是最佳的。 

 

独立集市和从属集市的区别

独立集市是指直接经过历史应用建立的数据集市。创建独立数据集市不须要有“全局思想”考虑。

与独立数据集市相对应的是从属数据集市。从属数据集市是利用来自数据仓库的数据创建的。它的数据源不依赖与历史数据或操做型数据,只依赖于数据仓库。总之,从属数据集市要求有预先的计划、长期的观察、全局的分析和企业各不一样部门对需求分析的合做与协调。

创建多个独立数据集市后,很快用户就会发现数据集市之间的信息不统一,也不一样步,并且每增长一个数据集市就会出现不断增加的细节数据冗余的问题,须要大量的资源来创建接口程序,维护这些程序也变成了负担。所以独立数据集市不适合与解决企业中的信息问题。

固然,若是企业采用了从属数据集市,并在创建任何数据集市以前先建立了一个数据仓库,那么,独立数据集市固有的哪些体系结构方面的问题就不会出现了。

换句话说,独立数据集市表示的是不须要顾及全局及全景的一个短时间的、有限范围的解决方法。另外一方面,从属数据集市则要求一个长期和全局的展望。可是独立数据集市不能为企业信息提供一个坚实的基础,而从属数据集市确能为信息决策提供了一个真正的长期基础。

 

总结:数据仓库中数据库设计推荐采用关系模式设计方法,而数据集市推荐采用多维模型设计方法,其中数据集市推荐采用从属型的数据集市构建方法。

相关文章
相关标签/搜索