计算机系统中存在两类不同数据处理工作:操作型处理和分析型处理,也称联机事务处理(OLTP)和联机分析处理(OLAP)
操作型也叫事务处理,通常是对一个或一组记录的查询和修改。
分析型指对数据的查询和分析操作,通常是对海量数据查询和分析,要访问的数据量很大。
因此诞生了DW数据仓库,数据仓库将操作型和分析型区分开来。传统的数据库技术为操作型处理服务,DW为分析型处理服务。
(一)数据仓库技术
数据仓库是为了构建新的分析处理环境而出现的一种数据存储和组织技术。
定义:DW是一个用以更好地支持企业决策分析处理的、面向主题的、集成的、不可更新的、随时间不断变化的数据集合。
1 DW的基本特征
(1)主题与面向主题
数据仓库中数据是面向主题进行组织的。主题是在较高层次上将企业信息系统中的数据综合、归类并进行分析利用的抽象。主题是一个在较高层次上对数据的抽象,使得面向主题的数据组织可以独立于数据的处理逻辑。
(2)DW是集成的
DW中的数据是从原有的分散数据库数据中抽取出的,因此在进入数据仓库之前必然要经过加工与继承,统一与综合。
(3)DW是不可更新的
DW存储的是相当长的一段时间内的历史数据,是不同时点数据库快照的集合,以及基于这些快照进行统计、综合和重组的导出数据,不是联机处理的数据。
DW主要供决策分析之用,所涉及的数据操作主要是数据查询,一般不进行修改操作。
OLTP数据库中数据经过抽取(Extracting)、清洗(Cleaning)、转换(Transformation)和装载(loading)存放到DW中(过程简记为ECTL)
(4)DW是随时间变化的
不可更新是指用户进行分析时不进行数据更新的操作。DW中数据随时间变化不断变化。
2 DW中的数据组织
DW中的数据分为多个级别:早起细节级、当前细节级、轻度综合级和高度综合级。源数据经过ECTL转入数据仓库,首先进入当前细节级,根据具体的分析处理需求再进行综合,进而成为轻度综合级和高度综合级。随着时间的推移,早期数据转入早期细节级。多重级别的数据组织可以大大提高联机分析的效率。
3 数据仓库系统的体系结构
数据仓库的后台工具包括数据抽取、清洗、转换、装载和维护工具
数据仓库服务器相当于数据库系统中的数据库管理系统,负责管理数据仓库中数据的存储管理和数据存取,并给OLAP服务器和前台工具提供存取接口。
OLAP服务器透明地为前台工具和用户提供多维数据视图
前台工具包括查询报表工具,多维分析工具,数据挖掘工具和分析结果可视化工具等。
(二)联机分析处理技术
联机分析处理是以海量数据为基础的复杂分析技术。
1 多维数据模型
多维数据模型是数据分析时用户的数据视图,是面向分析的数据模型,用于给分析人员提供多种观察的视角和面向分析的操作。此模型的数据结构可以用一个多维数组表示:(维1,维2,...维n,度量值);一般地,多维数组用多维立方体CUBE表示。
2 多维分析操作
常见的多维分析操作有 切片(slice)、切换(dice)、旋转(pivot)、向上综合(roll-up)、向下钻取(drill-down)
3 联机分析处理的实现方式
联机分析处理器一般按照多维数据模型的不同实现方式,分MOLAP结构,ROLAP结构,HOLAP结构。
MOLAP:以多维立方体CUBE组织数据,多维数组存储数据,支持直接对多维数据进程操作。
ROLAP:用关系数据库管理系统来管理多维数据,关系表组织存储多维数据。将多维立方体上的操作映射为标准的关系操作。ROLAP将多维立方体结构划分为两类表,一类事实表,描述存储多维立方体的度量值和各个维的码值;维表描述维信息。ROLAP用“星型模式”和“雪片模式”表示多维数据模型。
星形模式:一个事实表和一组维表组成。
雪片模式:将星形模式的维表按层次进一步细化,形成雪片模式。
(三)数据挖掘技术
1 数据挖掘的概念
数据挖掘:是从大量数据中发现并提取隐藏在内的,人们事先不知道的但有可能有用的信息和知识的一种新技术。
数据挖掘的目的:帮助决策者寻找数据间潜在的关联,发现经营者忽略的要素,这些要素对预测趋势,决策行为也许有用。
2 数据挖掘和传统分析方法的区别
传统的决策支持系统通常在某个假设下通过对数据的查询分析验证这个假设。数据挖掘则是在没有明确假设的前提下去挖掘信息,发现知识。
数据挖掘技术基于大量来自实际应用的数据,进行自动分析,归纳整理,从中发掘出数据间潜在的模式或产生联想。
数据挖掘所得到的信息具有事先未知,有效和可实用三个特征。
事先未知是指发掘出那些没有预料到的,靠人的知觉无法发现的知识。
3 数据挖掘的数据源
数据挖掘的数据源有两种:一种来自于数据仓库,一种直接从数据库而来。实际的应用数据往往不完全、有噪声、模糊、随机,需要进行预处理。
数据仓库建设花费巨大,如果只是为了数据挖掘,可以把一个或几个联机分析处理数据库导入一个只读的数据库中,然后进程挖掘。挖掘的结果要进行评价才能成为有用的信息,按结果不停,可能会进行重新分析。
4 数据挖掘的功能
(1)概念描述。归纳总结出数据的某些特征
(2)关联分析。两个或多个变量的取值之间存在某种规律性,称为关联。关联包括相关关联和因果关联。
(3)分类和预测。找到一定的函数或模型来描述和区分数据类之间的区别,用模型和函数对未来进行预测。数据类是预先知道的。分类的结果表示为决策树、分类规则或神经网络。
(4)聚类。将数据分为多个类,使类内部数据之间的差异最小,类之间的差异最大。聚类前并不知道类的具体个数。聚类技术报刊款传统的模式识别方法和数据分类学等
(5)孤立点的检测。孤立点是数据中的整体表现行为不一致的数据集合。
(6)趋势的演变分析。描述行为随着时间变化的对象所遵循的规律或趋势。
进行挖掘前首先明确挖掘的任务,然后根据任务对所选择的数据进行预处理,再选择算法进行挖掘;最后对挖掘出来的模式进行评价,削减其中重复的部分,将最终结果展现出来。