数据仓库

数据仓库

数据仓库将大量用于事务处理的传统数据库数据进行清理、抽取和转换,并按决策主题的需要进行重新组织。数据仓库的逻辑结构可分为近期基本数据层、历史数据层和综合数据层(其中综合数据是为决策服务的)。数据仓库的物理结构一般采用星型结构的关系数据库。星型结构由事实表和维表组成,多个维表之间形成多维数据结构。星型结构的数据体现了空间的多维立方体。这种高度集中的数据为各种不同决策需求提供了有用的分析基础。

事实表是用来记录具体事件的,包含了每个事件的具体要素,以及具体发生的事情;维表则是对事实表中事件的要素的描述信息。

比如一个事件会包含时间、地点、人物、事件,事实表记录了整个事件的信息,但对时间、地点和人物等要素只记录了一些关键标记,比如事件的主角叫“Michael”,那么Michael到底“长什么样”,就需要到相应的维表里面去查询“Michael”的具体描述信息了。

数据仓库的几个重要概念

决策分析角度或决策分析出发点构成了数据仓库中的维。维其实是最上层的因素。维可表达为数据仓库操作过程的路径,路径通常位于维的不同层次中。
数据的“上卷”是指用户在数据仓库的应用中,从较低层次的数据开始逐步地将数据按照层次进行概括处理,形成概括数据,最顶层的概括性数据就是维。
数据的“下钻”是指从数据仓库中的高层数据开始逐步向低层数据探索,了解概括性数据的具体细节。
数据仓库中的维具有层次性。水平层次由维度层次中具有相同级别的字段值构成。垂直层次则由维度层次中具有不同级别的字段值构成。
file
图1 维度层次关系

数据仓库的维对用户需求进行调研而获得,数据仓库的维构成数据仓库的模型。

数据立方体(多维数据集)

数据立方体是用户需要观察数据的集合,数据立方体的顶点就是事务,事务由对象做了哪些操作组合而成,比如哪些客户在什么时间购买了哪些产品。它提供了企业所感兴趣的商业业务。这些信息构成了立方体的粒度。如果某个客户购买了某种产品,结果就是基本粒度或原子事务。
file
图2 数据立方体

立方体是基本事务的聚合,是一种适合通过SQL或其他接口进行查询的完整数据结构。在数据仓库的实际应用中,高层的数据聚合存储采用立方体处理,效率较高。而以细节为基础,维变化的上卷聚合采用星型模型处理,效率更高更灵活。

聚集(聚合)

聚集收集了基本事务数据的结构。一个立方体包含很多层次,可以向用户提供某一层次的概括数据。管理者在进行决策分析的过程中,并不是要观察每一个详细的数据,而是根据自己的管理范围进行总体情况的了解。例如,地区销售经理想了解本地区的销售总量、未来的销售趋势、客户的类型,那就需要按照地区的城市、街道、产品种类和客户类型进行概括,也就是进行聚集。通过聚集,形成基于维的有决策分析意义的一些数据交集。

数据

元数据(metadata)是描述数据仓库的数据结构和建立方法的数据。元数据可分为技术元数据和商业元数据。
技术元数据是用于开发和日常管理数据仓库时用的数据。
商业元数据从商业业务的角度描述了数据仓库中的数据。包括:业务主题的描述,及相关的数据、查询和报表。

数据仓库体系结构

数据仓库是一个系统,理论上包含3个部分,其结构形式如图3所示:
file
图3 数据仓库体系结构

左边是数据源;中间是数据仓库;右边是报表等形式的数据显示。
数据获取:负责从外部数据源获取数据,数据被区分开来,进行拷贝、重新定义格式等处理后,准备装入数据仓库。
数据存储和管理:负责数据仓库的内部维护和管理,包括数据存储的组织、数据的维护、数据的分发及数据仓库的例行维护等,这些功能需要数据库管理系统的支持。
信息访问:这是数据仓库的前端,面向不同种类的最终用户。主要由查询生成工具、多维分析工具和数据挖掘工具等工具集组成,以实现决策支持系统的各种要求。

追求梦想,做最好的自己