对于数据仓库你知道多少
数据仓库是商业智能系统的基础,以往的数据库系统主要用于事务处理,很难或无法实现分析处理。近年来,越来越多的数据分析与决策信息支持在被企业所重视,数据仓库技术应运而生。
数据仓库的定义
目前对于数据仓库还没有统一的定义,被称为数据仓库之父的BillInmon在其着作《(Building the Data
Warehouse))一书中给出的定义被广泛接受:数据仓库(Data Warehouse)是一个面向主题的(Subject
Oriented)、集成的(Integrated)、相对稳定的(Non.Volatile)、反映历史变化(Time
Variant)的数据集合,用于支持管理决策。
可以从两个层面对数据仓库的概念进行理解,首先数据仓库是面向分析处理的,主要用来支持决策制定;再者数据仓库包含历史数据,是对多个异构的数据源数据按照主题的集成,它的数据相对固定,不会经常改动。
数据仓库的特点
面向主题、集成、相对稳定、反映历史变化是对数据仓库的定义,也是对数据仓库特点的描述,下面分别解释它们的含义。
(1)面向主题的:数据仓库的数据都是按照一定的业务主题进行组织的,面向主题体现在数据仓库的建设中,而且还包含在业务数据分析和存储上。
(2)集成的:数据仓库中的数据来自各个不同的分散数据库中,它并不是对源数据库数据的简单拷贝,而是按照划分好的主题和数据分析要求,经过数据抽取、清理、汇总和整理等步骤,消除源数据中的错误和不一致数据,保证数据仓库中数据的正确性和可用性,所以它是整合集成的。
(3)相对稳定的:数据仓库的稳定性体现在它的非易失性上,由于数据仓库是面向分析的,其中的数据是从业务数据中加载过来的历史数据,所进行的主要操作是查询和分析,供决策分析使用,所以其修改和删除操作很少,只需要定期的增量加载,所以具有相对稳定特征。
(4)反映历史变化:数据仓库必须能够不断地捕捉业务系统中的变化数据,记录企业生产过程的各个阶段的信息,以满足决策分析的需要,所以必须实时地把新变化的业务数据追加到数据仓库中去,通过数据随时问变化的研究和分析,可以对企业的发展历程和未来趋势做出定量分析和预测。
可见数据仓库与业务数据库的不同之处体现在:数据库是面向事务的设计,数仓库是面向主题设计的;数据库一般存储在线交易数据,数据仓库存储的一般是历史数据;
数据库设计是尽量避免冗余,一般采用符合范式的规则来设计,数据仓库在设计是有意引入冗余,采用反范式的方式来设计;
数据库是为捕获数据而设计,数据仓库是为分析数据而设计,它的两个基本的元素是维表和事实表。