正文共:9056字 2图
预计阅读时间:19分钟
欢迎您阅读此系列文章,文章参考自《全国计算机等级考试三级教程.数据库技术》。内容为书籍主要知识点以及常考点,阅读此系列文章可以帮助您快速、轻松考取相应证书!祝您阅读愉快,获取知识点文档地址:https://gitee.com/yjs0612/ncre 点击文章下方阅读原文即可跳转。
前言
在实际应用中,随着应用的运行许多企业都会积累大量的数据,数据是一种宝贵的资源。为了利用企业业务系统所产生的数据,从数据的组织技术和分析技术展开研究产生了数据仓库技术和数据挖掘技术。
在NCRE数据库技术考试中,这部分会以选择题、填空题出现,常考的知识点有了解决策支持系统的发展及演化、掌握数据仓库的概念与特性及元数据内容、熟悉数据仓库设计需求、数据模型和设计步骤、熟悉数据仓库的运行及维护、熟悉多维分析概念和基本操作、理解OLAP的实现方法、熟悉数据挖掘的相关技术。
由于这部分内容繁多,在这里主要以面向NCRE考试,部分相关详细内容不在这里详细赘述。
目录
决策支持系统的发展
预备知识 决策支持系统及其演化 基于数据仓库的决策支持系统 数据仓库技术概述
数据仓库的概念与特性 数据仓库的体系结构与环境 数据仓库的数据组织 元数据 操作型数据存储 设计与建造数据仓库
数据库设计需求与设计方法 数据仓库的数据模型 数据仓库设计步骤 数据仓库的运行与维护
数据仓库的数据更新维护 数据仓库监控与元数据管理 联机分析处理与多维数据模型
多维分析的基本概念 多维分析的基本操作 OLAP的实现方式 数据挖掘技术
数据挖掘步骤 关联规则挖掘 分类挖掘 聚类挖掘 时间序列分析
决策支持系统的发展
预备知识(了解)
人们一般将数据分成操作型数据和分析型数据,将数据处理也分成操作型处理和分析型处理。
数据仓库技术所解决的问题是如何更合理和更有效的组织企业的数据体系,以更好的满足企业信息型应用对数据的要求,降低企业的数据管理、数据获取和数据集成的成本,提高数据系统响应速度,提高数据质量和数据的一致性。
数据挖掘的技术所解决的问题是如何具体的分析对象和分析需求,尝试通过智能和自动化的手段把数据转换为有用的信息和知识。
决策支持系统及其演化(了解)
早期
操作型数据(Operational Data)是指由企业的基本业务系统所产生的数据,操作型数据及相应数据处理所处的环境,即用于支持企业基本业务应用的环境,一般被称为联机事务处理(OLTP)环境, OLTP环境中的企业各种基本业务应用系统称为操作型系统。为了利用OLTP环境所生成的数据,早期的决策支持系统( DSS)一般直接建立在事务处理环境中。
发展
决策支持系统DSS是综合利用大量数据,有机组合众多模型(数学模型和数据处理模型) ,通过人机交互,辅助各级决策者实现科学决策的系统。
DSS是协助而不是取代管理者进行决策, 一般来说,使用DSS的目的是为了增加决策的有效性,而不是为了提高做出决策的效率。
结果
在整个企业或机构的数据有可能会形成错综复杂的网状结构。最后整个企业或机构的数据有可能会形成一种蜘蛛网式的结构。但在蜘蛛网结构中,有可能因为抽取的多层性、数据和算法的不同使得数据在整个企业范围内缺乏可信性。
基于数据仓库的决策支持系统
数据仓库的决策支持系统提出目的是为了解决在“蜘蛛网结构”中存在的一系列问题。
数据仓库将企业决策支持所需的数据集成在一起,构成一个集成的、一致而稳定的数据源。企业内部的操作型系统和一些外部数据源构成了数据仓库的数据源。这种体系结构如下图所示:

在数据仓库体系结构中数据仓库是核心,操作型系统是基本数据源,决策支持系统是数据的需求者。其中主要存在下面两类数据:
原始数据(操作型数据) 原始数据一般来自于企业操作型系统。
导出数据(分析型数据) 导出数据是为了提高数据查询和管理效率,根据操作型数据到算得到的数据,常用于支持分析型应用。
数据仓库技术概述(掌握)
数据仓库的概念与特性
建立数据仓库的主要目的:根据决策需求对企业的数据采取适当的手段进行集成,形成一个综合的、面向分析的数据环境,用于支持企业的信息型、决策型的分析应用。
概念:数据仓库是一个面向主题的、集成的、非易失的,且随时间变化的数据集合,用来支持管理人员的决策。
数据仓库的几个重要特性如下所示:
面向主题性 在传统的OLTP环境下,数据库系统的数据一般是以面向企业基本业务应用的方式进行组织的。在数据仓库中数据是以面向主题的方式进行组织的,主题是一个抽象的概念,主题也可以称为分析主题或分析领域,用于表达某一宏观的分析领域所涉及的对象,以及与对象有关的数据集合。 目前数据仓库主题数据的实现一般还是采用关系型数据库技术。即主题的对象以及对象所相关的数据是通过一组关系表来实现。 在面向分析主题的数据组织方式中,需要先确定系统中所涉及的主题。 集成性 集成是数据仓库第二个特性。也是最为重要的特性。在数据进入数据仓库时。要采用各种集成方法来消除应用层的许多不一致性。 数据仓库的数据集成功能分成数据抽取、转换、清理(过滤)和装载4项任务。 数据集成主要完成从数据源获取数据,并按目标数据模型要求操作。装载入目标数据体系中。如数据仓库核心层模型的要求对数据进行转换,并清除错误或无效数据。 不可更新性 在操作型环境下,数据访问和处理一般以单条方式进行的 ,数据般是会被更改或更新的。在数据仓库中,数据通常是以批量方式载入与访问的,并不进行一般意义 上的更新。 不可更新并不意味着不再向数据仓库追加新的数据,只是表示般不再对进入数据库的原数据进行修改。 随时间变化 数据仓库的时变性是指数据仓库中的每个数据单元都有时间标志,记录一般都加有时戳 ,有时记录中可能包含有事务的发生时间。 数据仓库随时间变化的特性还指数据仓库在运行中必须不断捕促操作型环境中数据。并将新的数据集成后追加到其中。
数据仓库的体系结构与环境
从数据层次角度看,典型的数据仓库的数据体系结构包括的内容如下:个体层数据、操作型数据、操作型数据存储、数据仓库、数据集市(属于临时数据)。
从功能结构上看数据仓库的数据体系功能包括的内容如下:
数据处理
主要完成各层数据之间的流转功能,包括数据集成和数据维护等功能数据管理
对数据仓库中的数据进行安全控制、监控和元数据管理等功能数据应用
根据企业情况,包括各种类型的信息型应用或分析应用
数据仓库的数据组织
数据组织结构

在这个结构中,数据仓库中的数据分为早期细节级和当前细节级、轻度综合级、高度综合级。
来自操作型环境中的源数据经过集成后进入当前细节级。根据系统需要,可能需要对当前细节级的数据进行轻度的综合(汇总)或进一步的高度综合,得到轻度综合级数据和高度综合级数据。老化以后的细节数据将进入早期细节级。
粒度
系统中存在不同综合级别的数据, 一般将综合级别称为粒度。粒度越大,表示综合程度越高;粒度越小,表示综合程度越低。
在数据仓库环境中,粒度的设计会影响到数据仓库的数据量以及系统能回答的查询的类型粒度越小,细节程度越高,能回答的查询就越多),在数据仓库环境中,需要存储低粒度级的细节数据,数据量就比较大,空间代价也大。如果数据仓库不保存低粒度级数据。只有粗粒度级的数据,则需要存储的数据量较少,但这样就无法回答一些细节问题,查询代价就大。
一般, 在进行数据仓库的数据组织时,需要根据当前应用的需求来进行多粒度级设计,针对某一主题, 在可用的存储空间中保存粗细程度不同的主题数据,以尽可能满足各种应用的多角度多层次数据查询要求,同时在总体上提高查询的计算效率。
数据分区
在数据仓库中,数据分区可以解决用个物理表来存储模式相同的数据而造成数据管理和查询效率低下。怡当的数据分区能有效提高数据仓库各种数据处理功能的效率,合适的分区能使数据的增长和管理都容易实现。
分区的选择一般是由开发者来决定的 ,最常见的是按照时间标准来划分,也可以按照其他的标准进行划分,或者多个分区标准组合起来对数据进行分割。
数据分区的方式如下所示,两者之间存在一定的区别:
系统层分区
系统层分区是数据库系统提供的机制,各个分区在逻辑上是一个表,在物理上属于不同的分区。数据库管理系统知道各分区间的逻辑关系,也就是说数据库管理系统管理逻辑上的表和物理上的分区之间的关系。
应用层分区
应用层分区由应用代码实现,不同的分区在逻辑上和物理上都属于不同的表,如何分区由开发者和程序员控制,数据库管理系统并不知道分区间存在什么逻辑关系。
元数据
元数据( Meta Data )是数据仓库中的重要数据,是关于数据的数据,或者叫作描述数据的数据。元数据描述了数据的结构、内容、链和索引等项内容。
元数据描述了数据库中的各个对象,如数据库中的数据字典就是一种元数据。元数据描述对数据库、表、列等其他对象的定义。元数据定义了数据仓库中许多对象一表、 列、查询、商业规则及数据仓库内部的数据转移等。
在数据仓库中建立元数据的目的主要在于让用户能更快地找到所需的数据,让前台工具和管理员更好地理解和管理数据。
在数据仓库中,元数据一般分为技术型元数据和业务型元数据。
技术型元数据
描述关于数据仓库技术细节的数据。这些元数据应用于开发、管理和结构的描述等。
业务型元数据
从业务角度描述了数据仓库中的数据,它提供了介于使用者和实际系统之间的语义层,使得不懂计算机技术的业务人员也能够“读懂”数据仓库中数据也使得技术人员在开发、管理和维护数据仓库时更易于理解实际业务背景、满足实际业务需求。
操作型数据存储
在作为数据源的操作型系统与数据仓库之间存在一个"操作性数据存储(ODS)"的数据层。提出这个数据存储层的最初目的是支持些特殊的应用功能,主要包括即时OLAP和全局型OLTP应用。
保存在ODS中数据的基本特点:面向主题的、集成的、可变的和数据是当前的或接近当前的。
ODS分类
ODS I
第一类ODS数据更新频率是秒级的 ,即操作型系统中的数据发生改变以后几乎是立即传送到ODS中,这类ODS建设难度很大,但随着软硬件技术的进展,越来越多的企业在开始尝试建立这种ODS。ODS II
第二类ODS的数据更新频率是 小时级,如4小时更新一次,这类ODS建设难度低。ODS III
第三类ODS的数据更新频率是天级,一般隔夜后将数据更新到ODS中。ODS IV
第四类ODS的数据包含来自操作型环境的数据。也包含由数据仓库层和数据集市层的应用反馈给ODS的一些决策结果或一些报表信息。根据数据来源方向和类型区分。
“数据传送更新的速度划分的
设计与建造数据仓库
数据库设计需求与设计方法
设计需求
数据体系设计
指数据仓库决策支持应用程序的集合,为企业提供决策支持应用体系设计
最终将反映为对数据的需求.构成数据体系的建设需求用户的需求
体现为对企业基本数据模型的建立和基于企业的基本数据模型的不断变化的数据需求,会影响主题划分和主题的建立顺序。
设计方法
数据仓库的数据组织是面向主题的,按照一定的主题域分别设计 ,而不是面向报表的,要对各个报表进行统计分析、归类,划分为不同的主题进行建模。
CLDS ( SDLC的逆序)方法
针对需求变化比较大的数据仓库应用系统建立过程OLAPF 品中多维分析功能
通过动态的数据综合引擎来提高数据仓 库的数据体系对动态变化的需求的响应
数据仓库的数据模型
数据仓库的数据模型与普通数据库系统的数据模型一样, 一般划分为概念、逻辑和物理这3级数据模型,但是这两种3级数据模型之间有如下区别:
数据仓库中的数据模型一般不包含纯操作型数据。 数据仓库中的数据模型一般需要扩充关键字结构。在其中加入时间属性。 数据仓库中的数据模型中常常需要增加导出数据。
概念模型是用于描述客观世界中的对象及其属性的一种概念性工具。数据仓库中的概念模型常见的表示方法还是实体关系图,即ER图,用于描述实体以及实体之间的联系。
数据仓库的逻辑模型可以采用关系型模型,也可以采用多维数据模型,也可以通过关系型模型来表示多维模型。在常见的数据仓库系统中,多数还是采用关系模型作为关系逻辑描述工具。
物理模型就是逻辑模型在具体的数据存储平台上的物理定义,也就是逻辑模型在数据仓库中的实现,主要包括:物理存取方式、数据存储结构、数据存放位置、存储分配。在建立物理模型时需要考虑的因素主要有各种操作的存取时间和数据仓库存储空间利用率和数据仓库主题维护代价。
数据仓库设计步骤
数据集成在数据仓库设计中是必不可少的一环。数据集成是将源自不同数据源的数据经过抽取、转换、清理、装载等操作载入数据仓库的过程,是实施数据仓库的重要步骤。
ETL是实现数据集成的主要技术,即填充更新数据仓库的数据抽取、转换、装载的数据采集过程。对于复杂的数据由取转换载入过程, 一般使用工具协助ETL开发,并运用内建的元数据机制来储存源自于目的的映射和转换函数。越大量的资料、越复杂的转换逻翎越倾向于使用ETL。
数据仓库的运行与维护
数据仓库的数据更新维护
数据仓库维护的基本思路是:根据某种维护策略,在一定条件下触发维护操作;维护操作捕捉到数据源中的数据变化;通过一定策略对数据仓库中的数据进行相应的更新操作,以保持两者的一致性。数据仓库环境建立以后,需要对数据仓库进行日常管理工作,主要包括:
操作型数据环境中新生成数据的集成、载入、 刷新数据仓库中的细节数据。 导出数据(物化视图)、将过时的数据转移到磁带等存储设备上。 清除不再使用的数据、对元数据进行管理等。
维护策略
数据仓库中的数据维护策略分为3种:实时维护、延时维护和快照维护。
实时维护
实时维护在数据源发生变化时,立即更新数据仓库中数据。实时维护操作的触发条件是数据源进行了数据的更新操作。这种策略能够保证用户总查到最新的数据。
延时维护
延时维护工作并不是在数据源的更新事务中完成,而是在数据仓库中的视图被查询时完成更新。延时维护操作的触发条件是用户在数据源发生变化后首次对数据仓库执行查询操作。
快照维护
快照维护策略定期对数据仓库进行维护,维护操作的触发条件是时间。这种策略不会给源数据的更新事务或者数据仓库的查询事务增加任何负担,但通常无法提供最新的数据。
捕捉数据源的变化
对数据仓库中的相关数据进行更新需要通过某种机制来告知数据仓库源数据发生了变化。通过对源数据变化的监听和捕获来告知数据仓库哪些源数据发生了变化,典型的方法有:
触发器 修改数据源应用程序 通过日志文件 快照比较法
导出数据的刷新
对数据仓库中导出数据的维护方法有两种:
一是根据维护对象的数据源对其进行重新计算。 二是根据数据源的变化量在维护对象原有数据的基础上进行数据添加和修改,即增量式维护。
数据仓库的数据更新维护操作通常放在夜间完成,维护过程必须在第二天清晨完成(因为该操作需要执行大量的表数据更新操作,在此过程中用户无法获取数据仓库中的数据) 用户不可存取数据仓库时间的长短是衡量数据维护效率的重要指标。一个有效的方法是将维护过程分为"聚集" 和“更新”两部分。
聚集操作预先生成一部分更新用的聚集数据,存放在附加表中,不涉及对数据修改,这样用户仍能存取导出数据表。
更新操作具体执行维护对象的更新,用户不可存取数据仓库时间缩短为“更新” 操作所消耗的时间。
数据仓库监控与元数据管理
数据仓库监控
对数据仓库的数据量进行监控的原因:因数据仓库的存储容量是有限,数据仓库中的数据量可能会由于不断增长而超过存储限量。
根据监控情况对数据仓库的存储和设计进行必要的调整,例如增加一些设备,减少一些视图, 导出一些数据等措施。对数据库管理员来说:需要对数据仓库各种数据的使用率进行监控,以了解不同数据的用户和使用情况,并根据监控的情况对设计进行调整。
同时,对数据仓库环境的网络通信情况、网络数据流量、 数据源数据变化情况、集成和维护工具运行效率、查询响应时间、应用支持效率等各种工具、对象的状态、参数等,都需要进行必要的监控,以维持数据仓库的有效运行。
元数据管理
技术元数据:描述数据仓库结构,存储关于数据仓库系统技术细节的数据,如数据仓库监控的过程代码和结果。
业务元数据:提供企业概念模型和多维数据模型,表示出了数据的业务视图。
在数据仓库中必须建立元数据理机制,以合理的理数据仓库中的数据。
在实践中, 一般采用元数据库来存储和管理元数据。在设计、安装、使用、操作和管理数据仓库的工具和处理过程中,共享元数据库中的数据。
元数据记录企业详细信息,保存数据存储位置,生成维护数据之间的关系以及数据的转换过程,保证了数据仓库数据的一致性和准确性,支持强大的查询和报表生成工具,为企业进行数据质量管理提供数据依据和决策支持信息。
联机分析处理与多维数据模型
OLAP主要用于支持复杂的分析操作,侧重对决策人员和高层管理人员的决策支持。可以针对分析人员的要求,快速灵活地进行大数据量的复杂查询处理,并以直观易懂的形式将查询结果提供给决策人员,使他们准确掌握企业的经营状况,了解市场需求,制定正确方案,提高效益。
多维分析的基本概念
数据的多维分析是指针对数据仓库中以多维形式组织起来的数据,从多个角度、不同层次,采用各种数据分析技术,对数据进行剖析,以使用户能从不同角度和不同层次观案和分析数据。 一般用多维视图的概念来描述多维分析系统中用户所到的数据。多维模型的数据视图或数据集为多维空间中的点集,这样的数据视图被称为多维视图。 多维视图中的属性分为维属性和度量属性。
多维分析的基本操作
钻取与卷起
钻取与卷起是0LAP分析的两个最基本操作,为0LAP用户提供了足够灵活、多角度的观察数据的方法。
旋转
旋转是改变一个报告或页面显示的维方向,通过旋转可以得到不同视角的数据。最简单的旋转就是数据交叉。
切片和切块
在多维数据结构中,切片和切块实现局部数据的显示帮助用户从众多混杂的数据中进行选择。
“注意:这些活动是多维分析工具应该具有的最为基本的多维空间切换活动和单个空间内数据选择和角度变换活动,并不包括在数据之上其他分析功能。
OLAP的实现方式
基于多维数据库的OLAP(MOLAP)
MOLAP是OLAP的核心,它以多维数据库的形式将元数据、基础事实数据和导出数据存储在以多维数组为基本存储结构的多维数据库中。多维数据库目前最大的问题是缺乏标准,多维存储数据库的扩展性能差,所能存储的数据规模有限,也难以实现数据维护。基于关系数据库的OLAP ( ROLAP )
ROLAP称为基于关系数据库的OLAP。所有基础事实数据及维表都采用关系表来表示和存储,在使用ROLAP技术时,将多维数据库中的多维结构划分为两类:一类是基础事实表,用来存储事实度量值及各维的码值;一类是维表,对于每一个维来说,至少有一个表用来保存该维的描述信息。包括维的层次及成员列表等。混合型的OLAP( HOLAP )
混合型的OLAP是将基于多维数据库的OLAP和基于关系型的OLAP结合起来,汲取它们各自的优势。
数据挖掘技术
大量数据中存在很多有用的数据,需要将这些数据转换成信息和知识。数据挖掘可以简单的理解为从大量的数据中提取和挖掘知识。
数据挖掘步骤
数据挖掘作为知识发现的过程,一般由3个主要阶段组成:数据准备、数据挖掘、结果的解释评估。
数据准备
数据准备过程可以针对数据仓库也可以是普通数据文件,数据准备分为3个子步骤:数据选取
目的是确定挖掘任务的操作对象。根据用户的需求从原始数据室中抽取一组数据。数据预处理
一般包括消除嗓声、推导计算缺值数据、消除重复记录。完成数据类型转换等。当数据挖掘的对象是数据仓库时,一般数据预处理已经在生成数据仓库时完成了。数据变换
目的是将数据转换成适合数据挖掘需要的形式,如将文档信息 转换成数值向量形式。数据挖掘
首先确定挖掘的任务或目的,如分类、聚类、关联规则发现或序列模式发现等,然后决定使用什么样的挖掘算法,选择实现算法有两个考虑因素:数据特点、用户或实际运行系统的要求。“
注意:数据挖掘算法是KDD的核心,也是目前研究人员主要努力的方向,但要获得好的挖掘效果,必须对各种挖掘算法要求或前提假设有充分的理解。
结果解释评估
数据挖掘可以分成两大类任务:分类预测任务和描述型任务。训练集
用于训练学习算法和建立分类模型测试集
用于验证所生成的模型是否正确验证集
为实际应用中的数据,不具有类标签分类预测任务
从已经分类的数据中学习模型,并使用学习出来的模型去解决新的未分类的数据。常见的分类预测型方法有决策树、神经网络、规则归纳、支持向量机、贝叶斯、粗糙集回归分析、 K-最近邻等。
描述型任务
根据数据内部具有的固有联系,生成对数据集中的数据关系或整个数据集的概要描述。典型的描述型任务包括摘要、聚类和依赖分析等。
关联规则挖掘
关联规则主要是用于发现数据库中数据间没有关系的实体组合在一起可以产生很好的效果。如超市中啤酒"和“尿布”,这两个看上去没有关系的商品摆放在一起进行销售并获得很好的销售收益,这种现象就是卖场中商品之间的关联性。
关联规则主要对象是事务型数据库,其中针对的应用则是售货数据、也称为货篮数据。
关联规则的成立有两个条件:
支持度s ,即数据库D中有s%的记录包含XUY. 置信度c ,即数据库D中包含X的记录里有c%的记录包含Y.
关联规则的阈值
关联规则需要考虑支持度和可信度,需要给定两个阈值:最小支持度和最小可信度。
最小支持度
用户规定的关联规则必须满足的,表示了一组物品集在统计意义上需要满足的最低程序;最小可信度
用户规定的关联规则必须满足的,反映了关联规则的最低可靠程度。
“同时满足最小可信度阈值和最小支持度闯值的关联规则称为强关联规则。
分类挖掘
分类在数据挖掘中是一项非常重要的任务,是目前在商业上应用最多的一种数据挖掘方法。分类步骤如下:
通过已知数据集(训练集),建立分类函数,构造分类器。
评价分类器的标准:预测准确率、速度、健壮性、可扩展性、易理解性利用所获得的分类函数对未知类别标记的数据项进行分类操作。
聚类挖掘
聚类将一个数据集中的数据进行分组,使得每一组内的数据尽可能的相似而不同组间的数据尽可能的不同。
聚类方法包括统计方法、机器学习方法、神经网络方法、面向数据库的方法等。
在统计方法中,聚类称为聚类分析,它是多元数据分析的三大方法之一。在数据仓库中,使用数据挖掘的聚类算法进行分析,得出聚类结果可以让管理者更加有效的决策。
在机器学习中,聚类称为无监督(或无教师)归纳,聚类算法所处理的数据对象一般都没有标记。
时间序列分析
时间序列分析也可以称为数据演变分析,它能描述行为随时间变化的对象的规律或趋势,并对其进行建模。
对于时间序列的数据类型,时间序列从不同的角度可以分为:
一元时间序列和多元时间序列; 等间隔时间序列和不等间隔时间序列; 平稳时间序列和非平稳时间序列。
习题
某网上书店根据用户的历史购书记录,采用某种数据挖掘算法分析出用户最可能属于某一类书的爱好者,应该采用____分析。 数据挖掘作为知识发现的过程,一般由三个主要阶段组成 :数据准备、_____、结果的解释和评估。 在关联规则挖掘中,关联规则的成立与否一般用_____ 度和置信度两个指标进行描述。 在机器学习中,分类算法需要用到的样本数据般分成训练集、____ 集和验证集3类。
参考资料及声明
全国计算机等级考试三级教程.数据库技术 2019.12. 三级数据库技术:全国计算机等级考试上机考试题库 2017.10.

