1 什么是数据仓库?
目前,数据仓库一词尚没有一个统一的定义,著名的数据仓库专家W.H.Inmon在其著作
《Building the Data Warehouse》一书中给予如下描述:数据仓库(Data Warehouse)
是一个面向主题的(SubjectOriented)、集成的(Integrate)、相对稳定的(Non-Vola
tile)、反映历史变化(Time Variant)的数据集合,用于支持管理决策。对于数据仓库
的概念我们可以从两个层次予以理解,首先,数据仓库用于支持决策,面向分析型数据处
理,它不同于企业现有的操作型数据库;其次,数据仓库是对多个异构的数据源有效集成
,集成后按照主题进行了重组,并包含历史数据,而且存放在数据仓库中的数据一般不再
修改。
数据仓库建模分为物理建模以及逻辑建模:
物理建模:侧重于对物理存储介质的访问.
逻辑建模:侧重于反应业务部门的需求,逻辑建模通常可以分为3NF(第三范式)及星状模型
第三范式:范式是数据库逻辑模型设计的基本理论,可以通过范式来规范化一个关系型数据
库,在数据仓库的模型设计中多采用第三范式是因为它有非常严格的数学定义
(1) 每个属性的值唯一,不具有多义性;
(2) 每个非主属性必须完全依赖于整个主键,而非主键的一部分;
(3) 每个非主属性不能依赖于其他关系中的属性,因为这样的话,这种属性应该归到其他
关系中去。
星状模型: 星型模式是三个或三个以上数据表的集合.星型模式是一种多维的数据关系,
它由一个事实表(FactTable)和一组维表(DimensionTable)组成。每个维表都有一个
维作为主键,所有这些维组合成事实表的主键,换言之,事实表主键的每个元素都是维表
的外键。事实表的非主属性称为事实(Fact),它们一般都是数值或其他可以进行计算的
数据,而维大都是时间、地域等类型的数据。