2.4 数据集市

在第1章中介绍了独立数据集市和从属数据集市两种架构,本节继续讨论数据集市的概念、与数据仓库的区别、数据集市的设计等问题。

2.4.1 数据集市的概念

数据集市是数据仓库的一种简单形式,通常由组织内的业务部门自己建立和控制。一个数据集市面向单一主题域,如销售、财务、市场等。数据集市的数据源可以是操作型系统(独立数据集市),也可以是企业级数据仓库(从属数据集市)。

2.4.2 数据集市与数据仓库的区别

不同于数据集市,数据仓库处理整个组织范围内的多个主题域,通常是由组织内的核心单位,如IT部门承建,所以经常被称为中心数据仓库或企业数据仓库。数据仓库需要集成很多操作型源系统中的数据。由于数据集市的复杂度和需要处理的数据都小于数据仓库,因此更容易建立与维护。表2-19总结了数据仓库与数据集市的主要区别。

表2-19 数据仓库与数据集市的主要区别

2.4.3 数据集市设计

数据集市主要用于部门级别的分析型应用,数据大都是经过了汇总和聚合操作,粒度级别较高。数据集市一般采用维度模型设计方法,数据结构使用星型模式或雪花模式。

正如前面所介绍的,设计维度模型先要确定维度表、事实表和数据粒度级别,下一步是使用主外键定义事实表和维度表之间的关系。数据集市中的主键最好使用系统生成的自增的单列数字型代理键。模型建立好之后,设计ETL步骤抽取操作型源系统的数据,经过数据清洗和转换,最终装载进数据集市中的维度表和事实表中。