数据仓库
基本概念
数据仓库,英文名称为Data Warehouse,简写为DW或DWH。数据仓库的目的是构建面向分析的集成化数据环境,它存在的必要就是分析,帮助企业提供决策支持。
数据仓库是存储数据的,它基于存入的数据挖掘出数据应用的数据,生成各种分析报告或报表。
主要特征
数据仓库是面向主题的、集成到、不可更新的、随时间变化的。
面向主题
数据仓库中的数据是面向主题进行组织的。主题是一个抽象概念,是在较高层次上将企业信息系统中的数据综合、归类并进行分析利用的抽象。
例如对一家商场而言,概括分析的对象应该包括供应商、顾客、商品等。
集成化
由于操作型数据与分析型数据之间差别很大,数据仓库的数据是从原有的分散的数据库数据中提取出来的,那么这些数据必须要经过加工与集成。
- 首先要统一原始数据中的矛盾之处,例如字段的同名异义、异名同义,单位不统一或者字长不一样;
- 然后要把数据结构从面向应用到面向主题的大转变;
- 最后要进行综合和计算
不可更新
- 数据仓库主要是供分析决策使用,一般只涉及查询操作,不进行修改操作。
- 数据仓库记录的数据是相当长一段时间的历史数据,是基于不同时点的数据经过统计、综合和重组的导出数据,不是联机处理的数据
- OLTP数据库的数据经过抽取、清洗、转换、和装载存放到数据仓库中的,一旦数据存放到数据仓库中便不可更新。
随时间变化
不可更新是指不进行数据更新操作,并不是在数据仓库的整个生命周期数据集合不变。
- 数据仓库随时间变化不断增加新的数据内容
- 数据仓库随时间变化不断删去旧的数据内容
- 数据仓库中包含大量综合数据,这些数据很多都和时间有关,比如一些数据是根据时间进行采样的、一些是按照某一时间段进行综合的。
PLTP和OLAP的区别
OLTP(On-Line Transaction Processing),中文名称是联机事务处理。它主要针对具体的业务在数据库联机的日常操作,通常对少数记录进行查询、修改等。用户较为关心操作的响应时间、数据的安全性、完整性和并发支持的用户数等问题。
PLAP(On-Line Analytical Processing),中文名称是联机分析处理。一般针对某些主题的历史数据进行分析,以支持决策。
这两者的区别也可以说是数据库和数据仓库的区别,或者说是操作型数据库和分析型数据库的区别。
- 操作型数据库是面向事务的,分析型数据库是面向主题的。
- 操作型数据库一般存储业务数据,分析型数据库一般存储历史数据。
- 操作型数据库设计是尽量避免冗余,是针对某一业务应用进行设计的,比如一张简单的Uesr表,记录有关User的简单数据即可。分析型数据库有意引入冗余,依照分析需求、分析维度、分析指标进行设计。
- 操作型数据库是为捕获数据而设计的,分析型数据库是为分析数据而设计的。