第16章 数据仓库与联机分析处理技术
复习笔记
一、数据仓库技术
01操作型与分析型数据区别
操作型数据与分析型数据之间的区别如表16-1所示。
表16-1 操作型数据和分析型数据的区别
操作型数据 |
分析型数据 |
细节的 |
综合的,或提炼的 |
在存取瞬间是准确的 |
代表过去的数据 |
可更新 |
不可更新 |
操作需求事先可知道 |
操作需求事先不知道 |
生命周期符台软件开发生命周期(SDLC) |
完全不同的生命周期 |
对性能要求高 |
对性能要求宽松 |
个时刻操作一个元组 |
一个时刻操作一个集合 |
事务驱动 |
分析驱动 |
面向应用 |
面向分析 |
一次操作数据量小 |
一次操作数据量大 |
支持日常操作 |
支持管理决策需求 |
数据仓库是一个用以更好地支持企业(或组织)决策分析处理的、面向主题的、集成的、不可更新的、随时间不断变化的数据集合。数据仓库本质上和数据库一样,是长期储存在计算机内的、有组织、可共享的数据集合。
02数据仓库的基本特征
(1)主题与面向主题
主题是一个抽象的概念,是在较高层次上将企业信息系统中的数据综合、归类并进行分析利用的抽象。面向主题的数据组织方式是根据分析要求将数据组织成一个完备的分析领域,即主题域。
主题域应该具有以下两个特点:
①独立性;
②完备性。
(2)数据仓库是集成的加工和集成数据的步骤包括:
①统一原始数据中所有矛盾之处;
②将原始数据结构作一个从面向应用到面向主题的大转变;
③进行数据综合和计算。
数据综合工作可以在抽取数据时生成,也可以在进入数据仓库以后进行综合时生成。
(3)数据仓库是不可更新的
OLTP数据库中的数据经过抽取、清洗、转换和装载存放到数据仓库中(简称ECTL)。一旦数据存放到数据仓库中,数据就不再更新了。
(4)数据仓库是随时间变化的
数据仓库的数据是随时间的变化不断变化的,这一特征表现在以下三方面:
①数据仓库随时间变化不断增加新的数据内容;
②数据仓库随时间变化不断删去旧的数据内容;
③数据仓库数据的码键都包含时间项,以标明数据的历史时期。
03数据仓库中的数据组织
数据仓库中的数据分为多个级别:早期细节级、当前细节级、轻度综合级、高度综合级。数据仓库的数据组织结构如图16-1所示。
图16-1 数据仓库的数据组织结构
粒度是指数据仓库中数据具有的不同综合级别。粒度越大,表示细节程度越低,综合程度越高。多重粒度的数据组织可以大大提高联机分析的效率。不同粒度的数据可以存储在不同级别的存储设备上。
04数据仓库系统的体系结构
数据仓库系统架构由数据仓库的后台工具、数据仓库服务器、OLAP服务器和前台工具组成,如图 16-2所示。
图16-2 数据仓库系统的体系结构图
(1)后台工具
后台工具包括数据抽取、清洗、转换、装载和维护工具。
(2)数据仓库服务器
数据仓库服务器相当于数据库系统中的 DBMS,它负责管理数据仓库中数据的存储管理和数据存取,并给OLAP服务器和前台工具提供存取接口。
(3)OLAP服务器
OLAP服务器透明地为前台工具和用户提供多维数据视图。OLAP服务器则必须考虑物理上这些分析数据的存储问题。
(4)前台工具
前台工具包括查询报表工具、多维分析工具、数据挖掘工具和分析结果可视化工具等。
二、联机分析处理技术
联机分析处理是以海量数据为基础的复杂分析技术。
01多维数据模型
(1)定义
多维数据模型是数据分析时用户的数据视图,是面向分析的数据模型,用于给分析人员提供多种观察的视角和面向分析的操作。
(2)表示
多维数据模型的数据结构可以用这样的一个多维数组来表示:(维1,维2,...,维n,度量值)。多维数组还可以用多维立方体CUBE来表示。
02多维分析操作
常用的OLAP多维分析操作有切片、切块、旋转、向上综合、向下钻取等。
03OLAP的实现方式
OLAP服务器透明地为分析软件和用户提供多维数据视图,实现对多维数据的存储、索引、查询和优化等等。按照多维数据模型的不同实现方式,有MOLAP结构、ROLAP结构、HOLAP结构等多种结构。
(1)MOLAP结构
MOLAP结构直接以多维立方体CUBE来组织数据,以多维数组来存储数据,支持直接对多维数据的各种操作。
(2)ROLAP结构
ROLAP结构用RDBMS或扩展的RDBMS来管理多维数据,用关系的表来组织和存储多维数据。同时,它将多维立方体上的操作映射为标准的关系操作。
①事实表和维表
ROLAP将多维立方体结构划分为两类表,一类是事实(fact)表,另一类是维表。
a.事实表用来描述和存储多维立方体的度量值及各个维的码值;
b.维表用来描述维信息。
②表示形式
ROLAP用关系数据库的二维表来表示事实表和维表,即ROLAP用“星形模式”和“雪花模式”来表示多维数据模型。
(3)星形模式
星形模式通常由一个中心表(事实表)和一组维表组成。
事实表一般很大,维表一般较小。
(4)雪花模式
雪花模式是对维表按层次进一步细化后形成的。在“星形”维表的角上出现了分支,这样变形的星形模式被称为“雪片模式”。
三、数据挖掘技术
01概述
(1)定义
数据挖掘是从大量数据中发现并提取隐藏在内的、人们事先不知道的但又可能有用的信息和知识的一种新技术。
(2)目的
数据挖掘的目的是帮助决策者寻找数据间潜在的关联,发现经营者被忽略的要素,而这些要素对预测趋势、决策行为也许是十分有用的信息。
(3)涉及学科
数据挖掘技术涉及数据库技术、人工智能技术、机器学习、统计分析等多种技术,它使决策支持系统(DSS)跨入了一个新阶段。
02数据挖掘和传统分析方法的区别
(1)传统的DSS系统通常是在某个假设的前提下通过数据查询和分析来验证或否定这个假设。
(2)数据挖掘是在没有明确假设的前提下去挖掘信息,发现知识。
(3)数据挖掘技术是基于大量的来自实际应用的数据,进行自动分析、归纳推理,从中发掘出数据间潜在的模式。
数据挖掘所得到的信息应具有事先未知、有效和实用3个特征。
03数据挖掘的数据源
(1)来源
数据挖掘的数据主要有两种来源:
①从数据仓库中来;
②直接从数据库中来。
(2)数据来源于数据仓库的好处
数据仓库的数据已经过了预处理,许多数据不一致的问题都较好地解决了,在数据挖掘时大大减少了清理数据的工作量。
(3)数据来源于数据仓库的坏处
需要建立一个巨大的数据仓库,要解决所有的数据冲突问题,花费巨资。
04数据挖掘的功能
数据挖掘的功能主要有以下六种:
(1)概念描述
指归纳总结出数据的某些特征。
(2)关联分析
若两个或多个变量的取值之间存在某种规律性,就称为关联。
(3)分类和预测
找到一定的函数或者模型来描述和区分数据类之间的区别,用这些函数和模型对未来进行预测。分类的结果表示为决策树、分类规则或神经网络。
(4)聚类
将数据分为多个类,使得类内部数据之间的差异最小,而类之间数据的差异最大。聚类技术主要包括传统的模式识别方法和数学分类学等。
(5)孤立点的检测
孤立点是指数据中的整体表现行为不一致的那些数据集合。
(6)趋势和演变分析
描述行为随着时间变化的对象所遵循的规律或趋势。
一个典型的数据挖掘系统的体系结构如图16-3所示。
图16-3 典型的数据挖掘系统的体系结构
四、大数据时代的新型数据仓库
01系统需求的变化
和传统的数据仓库相比,大数据时代BI系统面临的需求发生了如下变化:
(1)数据量急剧增长;
(2)数据类型多样;
(3)决策分析复杂;
(4)底层硬件环境变化。
02传统数据仓库所面临的问题
(1)数据移动代价过高;
(2)不能快速适应变化。
03大数据时代的新型数据仓库
为了应对大数据时代系统在数据量、数据类型、决策分析复杂度和底层硬件环境等方面的变化,以较低的成本高效地支持大数据分析,新型的数据仓库解决方案需具备表16-2所示的几个重要特性。
表16-2 大数据分析平台需具备的特性
特性 |
简要说明 |
高度可扩展 |
横向大规模可扩展,大规模并行处理 |
高性能 |
快速响应复杂查询与分析 |
高度容错性 |
查询失败时,只需重做部分工作 |
支持异构环境 |
对硬件平台一致性要求不高,适应能力强 |
较低的分析延迟 |
业务需求变化时,能快速反应 |
易用且开放接口 |
既能方便查询,又能处理复杂分析 |
较低成本 |
较高的性价比 |
向下兼容性 |
支持传统的BI工具 |