数据仓库基本概念

什么是数据仓库?

宽泛地讲,数据仓库是一种数据库,它与单位的操作数据库分别维护。数据库允许将各种应用系统集成在一起,为统一的历史数据分析提供坚实的平台,对信息处理提供支持。

William H.Inmon 说过(数据仓库是一个面向主题的、集成的、时变的、非易失的数据集合,支持管理者的决策过程)

数据仓库的目标 数据仓库的主要任务_数据

操作数据库系统与数据仓库的区别?

联机操作数据库系统的主要任务是执行联机事务和查询处理。这种系统称作联机事务处理(OLTP)系统。它们涵盖了单位的大部分日常操作。

数据仓库系统在数据分析和决策方面为用户或”知识工人”提供服务。这种系统可以用不同的格式组织和提供数据,以便满足不同用户形形色色的需求。这种系统称作联机分析处理(OLAP)系统。(知识工人指的是例如经理、分析人员和主管)

 

数据仓库的目标 数据仓库的主要任务_数据集市_02

OLTP系统和OLAP系统的比较:

数据仓库的目标 数据仓库的主要任务_数据_03

数据仓库:一种多层体系结构。

通常,数据仓库采用三层体系结构,如下图:

底层是仓库数据库服务器,中间层是OLAP服务器,顶层是前段客户层

 

数据仓库的目标 数据仓库的主要任务_数据集市_04

数据仓库模型:企业仓库、数据集市、虚拟仓库

从结构的角度来看,有三种数据仓库模型:企业仓库、数据集市和虚拟仓库。

企业仓库:企业仓库搜集了关于主题的所有信息,跨越整个企业。它提供企业范围内的数据集成,通常来自一个或多个操作数据库系统或外部信息提供者,并且是多功能的。

企业数据仓库可以在传统的大型机、超级计算机服务器或并行结构平台上实现。它需要广泛的商务建模,可能需要多年涉及和建设。

数据集市:数据集市包含企业范围数据的一个子集,对于特定的用户群是有用的。有范围限于选定的主题。例如,销售数据集市可能限定其主题为顾客、商品和销售。包括在数据集市中的数据通常是汇总的。

根据数据来源不同,数据集市分为独立和依赖的两类。在独立的数据集市中,数据是来自一个或多个操作数据库系统或外部信息提供者,或者来自在一个特定的部门或地区局部产生的数据。依赖的数据集市的数据直接来自企业数据仓库。

数据集市可以在低价格的部门服务器上实现,基于UNIX/Linux或Windows。数据集市的实现周期一般是数以周计的。

虚拟仓库:虚拟仓库是操作数据库上视图的集合。为了有效地处理查询,只有一些可能的汇总视图被物化。虚拟仓库易于建立,但需要操作数据库服务器还有余力。

 

数据仓库开发较好的方式:

对于开发数据仓库系统,一种推荐的方法是以递增、进化的方式实现数据仓库。首先在一个合理短的时间内(如一两个月),定义一个高层次的企业数据模型,在不同的主题和可能的应用之间,提供企业范围的、一致的、集成的数据视图。这个高层模型将大大减少今后的集成问题,尽管在企业数据仓库和部门数据集市的开发中,它还需要进一步提炼。其次,基于上述相同的企业数据模型,可以并行地实现独立的数据集市和企业数据仓库。再次,可以通过中心服务器集成不同的数据集市,构造分布数据集市。最后,构造一个多层数据仓库,这里,企业仓库是所有仓库数据的唯一管理者,仓库数据分布在一些依赖的数据集市中。

 

数据仓库系统使用后端工具和使用程序来加载和刷新它的数据。这些工具和实用程序包含以下功能:

数据提取、变换和装入:

数据提取:通常,有多个异构的外部数据源收集数据。

数据清理:检测数据中的错误,可能时订正它们。

数据变换:将数据由遗产或宿主格式转换成数据仓库格式。

装入:排序、汇总、合并、计算视图、检查完整性、并建立索引和划分。

刷新:传播由数据源到数据仓库的更新。