二、数据仓库定义、特性以及数据库和数据仓库的区别
数据仓库定义
数据仓库不是数据的简单堆积,而是从大量的事务型数据库中抽取数据,并将其清理、转换为新的存储格式,即为决策目标把数据聚合在一种特殊的格式中。
数据仓库(Data Warehouse)是一个面向主题的(Subject Oriented)、集成的(Integrated)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据集合,用于支持管理决策(Decision Making Support)。
数据仓库特点
知道了什么是数据仓库后,再来看看它有哪些特点吧。某种程度上来说,这也是分析型数据库的特点:
1. 面向主题
面向主题特性是数据仓库和操作型数据库的根本区别。操作型数据库是为了支撑各种业务而建立,而分析型数据库则是为了对从各种繁杂业务中抽象出来的分析主题(如用户、成本、商品等)进行分析而建立;
主题是一个抽象的概念,是较高层次上企业信息系统中的数据综合、归类并进行分析利用的抽象。
2. 集成性
集成性是指数据仓库会将不同源数据库中的数据汇总到一起;
- 要统一源数据中所有矛盾之处,如字段的同名异义、异名同义、单位不统一、字长不一致,等等。
- 进行数据综合和计算。数据仓库中的数据综合工作可以在从原有数据库抽取数据时生成,但许多是在数据仓库内部生成的,即进入数据仓库以后进行综合生成的。
3. 企业范围
数据仓库内的数据是面向公司全局的。比如某个主题域为成本,则全公司和成本有关的信息都会被汇集进来;
4. 历史性
较之操作型数据库,数据仓库的时间跨度通常比较长。前者通常保存几个月,后者可能几年甚至几十年;
5. 时变性
时变性是指数据仓库包含来自其时间范围不同时间段的数据快照,是随时间而变化的。有了这些数据快照以后,用户便可将其汇总,生成各历史阶段的数据分析报告;
6、不可更新
数据仓库主要是为决策分析提供数据,所涉及的操作主要是数据的查询;
7、汇总
操作性数据映射成决策可用的格式。
8、大容量
时间序列数据集合通常都非常大。
9、非规范化的
Dw数据可以是而且经常是冗余的。
10、元数据
将描述数据的数据保存起来。
11、数据源
数据来自内部的和外部的非集成操作系统。
数据库和数据仓库的去区别
- 出发点不同:数据库是面向事务的设计;数据仓库是面向主题设计的。
- 存储的数据不同:数据库一般存储在线交易数据;数据仓库存储的一般是历史数据。
- 设计规则不同:数据库设计是尽量避免冗余,一般采用符合范式的规则来设计;数据仓库在设计是有意引入冗余,采用反范式的方式来设计。
- 提供的功能不同:数据库是为捕获数据而设计,数据仓库是为分析数据而设计,
- 基本元素不同:数据库的基本元素是事实表,数据仓库的基本元素是维度表。
- 容量不同:数据库在基本容量上要比数据仓库小的多。
- 服务对象不同:数据库是为了高效的事务处理而设计的,服务对象为企业业务处理方面的工作人员;数据仓库是为了分析数据进行决策而设计的,服务对象为企业高层决策人员。