基于数据仓库的决策支持系统设计研究

2010-07-25 07:16闵建虎
微型电脑应用 2010年4期
关键词:决策支持系统数据仓库数据源

闵建虎

0 引言

根据对国内外一些企业决策支持系统(DSS)的现状研究与分析,以及对国内外发表在期刊上介绍 DSS案例的文章分析,初期的 DSS是使用关系型数据库(RDB)。虽然RDB有许多优点,但DSS直接使用下层信息系统所建立的数据库极不方便。综合数据均要经过一定加工和通过一定的查询途径才能得到,速度慢,实用性差。为解决此问题,中期的DSS多采用在原基层数据库的基础上,增加DSS专用数据库的方法。该专用数据库是由原内源基础数据库和外源数据库抽取数据,经加工后得到的综合数据组成的。它可满足快速查询和显示要求,系统性能大大改善。但仍未解决DSS的根本性问题,即获得数据是非现实的,不是面向主题、面向分析和面向支持管理层的决策制定。

一般决策所需的数据总是与一些维数和不同级别的统计和计算有关,以多维数据为核心的多维数据分析是决策的主要内容,DW技术的出现给DSS数据的提取和分析,特别是多维数据的分析与处理创造了很好的条件。DW的多维特征满足DSS对数据的分析要求,并且克服数据库的数据组织性差、利用率低的缺点。在数据库多年的应用中已经积累大量数据,而且目前数据库的数量和规模还在迅速增加和扩大,从而出现“数据丰富、知识贫乏”的问题。因此,从庞大的数据库中抽出有用的信息已是当务之急,所以 DW 为DSS发展开辟了新的途径,并且基于数据仓库的决策支持系统设计有着十分重要的应用价值。

1 数据仓库

1.1 数据仓库的概述

数据仓库是号称“数据仓库之父”的 W. H. Inmon提出,数据仓库是支持管理决策过程的、面向主题的、集成的、不可更新的、随时间不断变化的数据集合。换句话说:数据仓库为支持海量存储和高层决策分析,提供了一种解决方案。它抽取和净化来自不同应用系统的数据,从事物发展和历史的角度进行组织和存储,并通过对这种集成化数据的分析和挖掘,为最终用户提供综合性和分析性的深层次信息,是基于传统数据库技术的一种应用拓展。该定义指出了它与数据库的区别:数据仓库并非是一个仅仅存储数据的简单信息库,因为这实际上与传统数据库没有两样。如果说传统数据库系统的重点与要求是快速、准确、安全、可靠地将数据存进数据库中的话,那么数据仓库的重点与要求就是能够准确、安全、可靠地从数据库中取出数据,经过加工转换成有规律信息之后,再供管理人员进行分析使用。

1.2 数据仓库的系统结构

数据仓库是存储数据的一种组织形式。从逻辑结构看,其中的数据可分为3至4层:最初是从传统数据库中获得原始数据,先按辅助决策的主题要求形成当前基本数据层;再按综合决策的要求形成综合数据层(其中又可分为轻度综合层和高度综合层);随着时间的推移,由时间控制机制将当前基本数据层转为历史数据层。这几个数据层均由元数据(Meta Data)组织而成,元数据是数据仓库的核心。从物理结构看,可分为多维数据库组织形式(空间超立方体形式)、基于关系数据库组织形式和虚拟存储形式。数据仓库系统(DWS)是对进入数据仓库的原始数据,完成抽取转换过滤清洗等处理,最终进入数据仓库,机器对数据仓库中存储的数据,进行更新管理,使用相关软件进行集合,用以支持管理决策。DWS通常由数据仓库、仓库管理和分析工具组成。如图1所示。

图1 数据仓库的体系结构

(1)数据源

如图1所示,最左边是数据源,包括数据库数据源和非数据库数据源。数据库一般是异构的,通过网络互连。数据源是数据仓库系统的基础,是整个系统的数据来源。在建立数据仓库之前必须对各种不同的数据源进行抽取、转换等操作。

(2)数据源的集成

多数据源的集成包括抽取、转换、装载等过程。数据集成是构建数据仓库的重要一环,用户从数据源抽取出所需的数据,经过数据转换和清洗,最终按照预先定义的数据仓库模型,将数据加载到数据仓库中去。

(3)中心数据仓库

当前数据仓库的核心仍是 RDBMS管理下的一个数据库系统,由于数据仓库的数据量大,查询复杂,因此系统性能的好坏仍然是个严重问题。为了提高性能,在数据仓库中通常采用下列措施:(a)采用并行系统结构;(b)对数据仓库中用得多、开销大的处理;(c)针对数据仓库以读为主的特点,把查询中常用的结果定义为视图,并将事先计算好的视图存于数据仓库中,在需要时读出即可,无需临时计算。上述3条措施中,并行处理已经是数据库中的通用技术,受到各主要RDBMS产品的支持;后两项措施,主要是随数据仓库的兴起而发展起来的,目前一些主要的RDBMS产品,都增加了这些方面的功能。

(4)数据集市

数据的最终查询分析,往往是基于某个主题的,不同的决策主题,所需要的数据当然也不尽相同。如果每次都从整个中心数据仓库去获取数据的话,其执行效率显然是比较低的;因此可在单位数据仓库之外,再建立若干部门数据仓库,即数据集市。

(5)联机分析处理(OLAP)服务器

OLAP服务器位于客户端与数据仓库之间,负责管理数据模型及其数据,实际上是一个功能强大的多维分析引擎。它从数据仓库中抽取数据,并根据分析需要,对分析需要数据进行有效集成按多维模型予以组织,以便进行多角度、多层次的分析,并发现趋势。

(6)前端的分析工具

前端分析工具包括各种查询工具、数据分析工具、报表工具、数据挖掘工具以及各种基于数据仓库或数据集市的应用开发工具。其中数据分析工具主要针对 OLAP服务器;报表工具、数据挖掘工具主要针对数据仓库。以上各种前端分析工具运行于客户端,主要功能是提供多维数据查询和分析操作以达到决策支持的目的。

2 联机分析处理(OLAP)与数据挖掘(DM)

2.1 联机分析处理(OLAP)技术

联机分析处理(OLAP, On-line Analytical Processing),是一种针对特定问题进行联机数据访问和分析的技术。它是决策人员通过对信息的多种可能的观察形式进行快速、一致和交互式的存取来获得对数据的深入观察。

随着数据仓库的发展,OLAP也得到了迅猛的发展。数据仓库侧重于存储和管理面向决策主题的数据;而 OLAP则侧重于数据仓库的数据分析,并将其转换成辅助决策信息。OLAP的一个主要特点是多维数据分析,这与数据仓库的多维数据组织正好形成相互结合、相互补充的关系。因此,利用 OLAP技术与数据仓库的结合,可以较好地解决传统决策支持系统,既需要处理大量数据又需要进行大量数值计算的问题。OLAP的多维数据分析,主要通过对多维数据的维进行剖切、钻取和旋转来实现对数据库所提供的数据进行深入分析,为决策者提供决策支持。多维结构是决策支持的支柱,也是 OLAP的核心。多维结构中的维突破了三维概念,可以有四维、五维甚至更多维的数据结构,即超立方体和多立方体的数据结构。我们可以利用分析工具对多维数据结构进行切片、切块、向上钻取、向下钻取、跨越钻取和旋转等处理,得到所需的决策分析数据。

2.2 数据的挖掘(DM)技术

数据的挖掘(Data Mining)就是从大量的、不完全的、有噪声的、模糊的、随机的实际应用数据中,提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程。准确的说,数据挖掘是数据仓库中的数据集合,在面向主题的预操作的作用下,转化成面向主题的数据挖掘集合,然后数据挖掘集合,在挖掘算法它数据转化操作的作用下,转化成相应的信息,最后,在信息输出时对信息进行度量和滤除。在DDS中通过进行数据挖掘,用以发现数据之间的复杂联系以及这种联系对决策的影响。数据挖掘的功能有自动预测趋势和行为,关联分析、聚类、概念描述和偏差检测。在数据仓库基础上挖掘的知识通常以图表、可视化、类自然语言等形式表示出来,但所挖掘的知识并不都是有意义的,必须进行评价、筛选和验证,把有意义的知识放到知识库中,随着时间的推移将积累更多的知识。知识库根据挖掘的知识类型包括总结性知识、关联性知识、分类模型知识、聚类模型知识,这些知识通过相应挖掘算法得到。

3 决策的支持系统(DSS)

目前没有普遍接受的决策支持系统(Decision Support System,简称为DSS)的定义。一个经典的定义是:决策支持系统通过结合个人的智力资源和计算机的能力来改进决策的质量。它是一个基于计算机的支持系统,服务于处理半结构化或非结构化问题的管理决策制定者。

一个决策支持系统将包括如下典型的组件:

(1)管理的子系统

DSS的数据库通常包括在数据库中。数据仓库是集成、面向主题的数据库集合,它是用来支持决策支持功能的,其中每个数据单元都不随时间改变。数据仓库的数据通常从内部和外部数据源中抽取。

(2)模型的管理系统

一个包含有财务、统计、运筹和其他定量模型的软件包,能够提供系统的分析能力和合适的软件管理能力。在模型库中的模型可以分为战略性的、策略性的、营运性的等。

(3)知识的管理系统

许多非结构化和半结构化的问题是如此的复杂,以至于超出了通常的 DSS能力,它们还需要特别的专业知识。这些知识可以由专家系统或者其他智能系统提供。因此,更高级的DSS系统还包含成为知识管理的组件。

(4)用户界面的子系统

用户界面子系统就是用户与应用之间的交流。如交互式界面、报表打印。为了实现组织内的信息共享,还应包括信息的发布方式。在目前采用 Web浏览器的形式已经成为趋势,用户可看作系统的一部分。

决策支持系统作为一门新兴的信息技术,能够为企业提供各种决策信息支持以及许多商业问题的解决方案,从而减轻管理者从事低层次信息处理和分析的负担,使得他们专注于最需要决策智慧和经验的工作,从而提高决策的质量和效率。

4 设计的实现

4.1 基于DW的DSS的构建

针对现在一般企业用户范围广、流动性大和面对市场需求分析工作量大的特点,在该企业现有内部网(Intranet)的基础上,本人设计了一个基于数据仓库的决策支持系统,其系统框架结构模型如图2所示。

图2 基于DW的DSS框架模型设计

本系统的整个框架结构是建立在基于Web技术的企业Intranet应用于集成框架之上,其应用模型是浏览器/服务器(B/S) 3层结构形式,即客户端、应用(数据采集、处理、分析与挖掘)服务器和数据源(数据仓库、数据库与知识库)服务器。数据仓库的采集单元(pump)负责定期的通过企业内部网通信干线分布在网络各站点上的有关数据库收集最新的数据,并完成数据的净化与变换。考虑到 DW 中数据对象较为复杂且数量巨大,决策支持系统其他单元对 DW 的访问是通过OLAP服务器来完成的。使用OLAP服务器的目的是为了得到完善的多维数据管理,并提供简便快速且性能有保证的多维数据查询和分析,大大地降低了系统的数据传输量,提高了数据挖掘和决策分析效率。

与传统的 DSS体系结构不同的是:知识库中的知识除了在系统建立之初输入之外,还由系统的数据挖掘单元不断地进行补充。在数据挖掘单元中,尽量使用已有的一些数据挖掘软件工具,如SAS,IBM Intelligent Mines等。在中间层设置Web服务器和知识服务器。用户通过HTTP协议访问Web服务器上的HTML格式的页面,而Web服务器则根据页面设置与用户要求向知识服务器提出决策需求。知识服务器是处理用户决策需求的综合服务单元,它根据用户需求向知识库和数据库要求相应的知识和数据,经处理后以Web页面的形式提供给用户。在客户端,用户通过 Web浏览器访问Intranet上的Web服务器来进行决策咨询。本系统的用户可分为两类:一类是一般人员,他们只需要了解一下企业总体情况以及决策支持系统对具体的一般性建议,服务器上的静态 Web页面就可以满足他们要求。另一类是企业高层管理决策人员,他们除需了解各部门情况与相关统计以外,还想知道发展趋势分析与预测,进行某些专门分析与知识咨询等,这就需要与系统进行动态交互。系统可以通过 Web页面上嵌套Java Applet小程序来实现这种用户和系统的动态交互,使用户能动态地通过知识库服务器访问数据仓库和知识库,以取得所需要的特殊信息。

4.2 数据仓库的设计

数据仓库与传统数据库的设计过程都要经历概念模型、逻辑模型和物理模型3个设计阶段。但数据仓库与数据库在各个设计阶段所采取的方法却截然不同。本人根据上述系统数据仓库采用面向主题,即面向对象自上而下的设计方法。下面分别介绍3个模型设计阶段采用的建模技术。

(1)DW概念模型的设计

超立方体(Hypercube)可用超出三维的表示来描述一个对象(对象可以是客户、产品、营销策略等),它完全可以满足 DW 的多维特性。使用自上而下的方法设计一个超立方体的步骤如下:

(a) 确定模型中需要抓住的关键过程。

(b) 确定需要捕获的值。

(c) 确定数据的粒度,即需要获取最低一级的详细信息。

当维数超过三维后,超立方体在表现上缺乏直观性,因此我们采用一种称为信息包图(Information packed picture)的方法在平面上展开超立方体。使用信息包图设计概念模型的具体步骤如下:

(a) 确定指标:指标是访问DW的关键所在,是用户最关心的信息。它是表示在维度空间衡量商务信息的一种方法。

(b) 确定维度:维度提供了用户访问DW的信息途径,对应超立方体的每一面,位于信息包图的第一行的每个栏目中。

(c) 确定类别:类别是在一个维度内为了提供详细的分类而定义的,而其中的成员又是为了辨别和区分特别数据而设的,它表示一个维度包含的详细信息。一个维度内最低层的可用分类可以又称为详细类别。

(2) DW逻辑模型的设计

DW主要提供的是查询操作,而最便于执行查询操作的逻辑模型设计工具是星型图(star chart),因此我们利用星型图建模技术,可以为DW建立完善的逻辑模型。从DW的概念模型(信息包图模型)转换成 DW 的逻辑模型(星型图模型)的过程,可以分为以下几个步骤:

(a) 定义指标实体:指标实体位于星型图的中心,是用户最关心的基本实体和查询活动的中心,为用户的商务活动提供定量数据。每一个指标实体代表一系列相关事实,完成一项指定的功能,在一般情况下代表一个现实事物的综合水平,仅仅与每个相关维度的一个点对应。

(b) 定义维度实体。一个维度实体对应指标实体中的多个指标,用户使用维度实体来访问指标实体,其实质是对应着逻辑数据实体。一个维度实体对应信息包图中的一个列。

(c) 定义详细类别实体。一个详细类别的实体与现实世界的某一个实体相对应。

(d) 定义逻辑模型。定义逻辑模型的最后一步是将星型模型转换成雪花模型。限于篇幅,转换过程与图示从略。

(3) DW物理模型的设计

根据星型模型或雪花模型,就可以方便地定义出DW的物理数据结构。一般将指标实体和详细类别实体转变为一个具体的物理数据库表,称为事实表。维度实体通常也转化为数据库表,称为维表,它包括其每一层次的主码和对应的值。维表和事实表通过维关键字相关联。在物理模型设计阶段,需要确定以下的内容:

(a)规定数据质量指标,规范数据仓库中的各种数据。(b)定义实体、实体特征以及实体所具有的一切属性。(c)定义规模,确定数据容量和更新频率。为了获得物理模型设计阶段完整的文档资料,可利用自动定义软件工具进行数据管理。

4.3 基于数据仓库的数据挖掘

数据挖掘(DM)是DSS应用中非常重要的环节,它是在一些事实或观察数据中寻找合适模式的决策支持过程。DM的对象主要是数据仓库或大型的数据库,也可以是文件系统或其他任何组织在一起的数据集合,从简化的观点来讲,绝大多数的挖掘算法,可以看成是由少数几个基本原则与技术组成的。本系统的DM算法是由模型、偏好判据和搜索算法3个部分组合而成的。主要的模型有特征模型、分类模型、聚集模型、关联模型、对比模型、汇总模型和决策模型等。由于篇幅有限有关它们的具体数据挖掘算法的确定与应用就不在此一一阐述。

5 结束语

大量数据的产生和收集导致了信息爆炸,现代社会的竞争趋势要求对这些数据进行实时的和深层次的分析。虽然现在有了更强大的存储和检索系统。但是使用者发现在分析和使用所拥有的信息方面变得越来越困难。数据仓库提供了容纳大量信息的场所,但只有和 OLAP技术、数据挖掘技术的应用综合起来才能最终解决用户的困惑,使用户能够从大量繁杂的数据中找出真正有价值的信息和知识。而数据仓库的建立并不是要取代原有数据库,而是在原有的数据库应用系统的基础上建立全面、完善的信息应用基础,用于支持高层决策分析。本文主要对数据仓库、OLAP、数据挖掘着几种技术以及基于DW的DSS构建、数据仓库的设计等方面进行了较为深入的分析研究,对于数据仓库技术的决策支持系统具有十分广泛的应用前景。

[1]Efrem G.Mallach, Decision Support and Data Warehouse Systems, McGraw-Hill, Companies, Inc, 2000.

[2]Inmon W H. Building the Data Warehouse[M]. 机械工业出版社,2003.

[3]陈文伟.决策支持系统及其开发[M].北京:清华大学出版社,2000.

[4]张维明.数据仓库原理及应用[M].电子工业出版社,2002.

[5]王珊.数据仓库技术和联机分析处理[M].科学出版社,1999.

[6]康晓东.基于数据仓库的数据挖掘技术[M].机械工业出版社,2004.

[7]石丽,李坚.数据仓库与决策支持[M].国防工业出版社,2003.

[8]王珊,萨师煊.数据库系统概论(第四版)[M].高等教育出版社,2007.

猜你喜欢
决策支持系统数据仓库数据源
护理临床决策支持系统的理论基础
基于数据仓库的数据倾斜解决方案研究
面向知识转化的临床决策支持系统关键技术研究
临床决策支持系统应用于呼吸疾病的现状概述
基于数据仓库的住房城乡建设信息系统整合研究
电务维修决策支持系统研究
Web 大数据系统数据源选择*
基于不同网络数据源的期刊评价研究
探析电力系统调度中数据仓库技术的应用
基于数据仓库的数据分析探索与实践