李 玥,杨成全
(山西大同大学物理与电子科学学院,山西大同 037009)
基于工作流的分布式数据仓库模型的研究
李 玥,杨成全
(山西大同大学物理与电子科学学院,山西大同 037009)
通过对数据仓库和分布式数据仓库体系构架的分析,得出当前分布式数据仓库存在的缺点:不能进行灵活的定制,易用性差。分布式数据仓库为了保持全局数据仓库和局部数据仓库的数据一致性,需购买大量昂贵的存储设备来保存两份相同的数据。针对这些缺点,提出了一种基于工作流的分布式数据仓库模型,模型的整体结构基于SOA面向服务的体系结构、分布式。引入了工作流技术来实现灵活定制数据提取需求、分析挖掘需求及结果可视化的需求,并将这些功能封装成整体模型中的业务流程服务。在业务流程服务模型部分提出了数据仓库业务流程执行语言、业务流程的可达性验证算法和优化算法。
数据挖掘;SOA;工作流;分布式数据仓库
在竞争日以激烈的当今社会,企业通过快速响应用户的需求来提高自身的竞争力,相继实施或自主开发了适合于自身业务的信息系统。这些系统大体分为两类:一种是企业中通用的系统如ERP、CRM等,另一种是专门行业的业务系统,例如教育考试领域中的中考管理系统、高考管理系统等。通过使用这些系统,企业或组织内逐渐积累起大量的数据。由此,出现了一个新的需求,即对大量已有的数据进行分析挖掘以支持业务和高层决策的应用。
由于人们对从大量数据中找到有用的知识的需求日渐强烈,随即,一系列用来实现数据的分析与挖掘的理论和技术相继产生,包括数据挖掘技术、数据仓库以及分布式数据仓库等,这些理论和技术都可以被归结为数据仓库。数据挖掘以模糊数学、人工智能、统计学等学科为基础的一门学科。
数据挖掘是从大量数据中提出取或“挖掘”知识[1]。数据挖掘的最终目的就是从大量数据中获取有效的、新颖的、潜在有用的、模式的和最终可理解的知识。数据挖掘的广义定义:数据挖掘就是从存放在数据库、数据仓库或其他信息库中的数据中挖掘出知识的完整过程。
数据仓库是一个面向主题的、集成的、非易失的且随时间变化的数据集合,用来支持管理人员决策[2]。数据仓库是面向主题的、集成的、非易失的有组织的数据集合,支持管理的决策过程[3]。数据仓库也是一种数据的长期存储,这些数据来自多数据源,是经过组织的,以便支持管理决策。这些数据在一种一致的模式下存放,并且通常是汇总的。数据仓库提供一些数据分析能力,称作OLAP(联机分析处理)。
分布式数据仓库系统(Distributed Data Warehouse System)[3]使用计算机网络将多个物理上分散的数据仓库系统联接起来,形成了一个逻辑上相统一的数据仓库系统,以满足分析挖掘的需要。
工作流建模工具(Workflow Formalism Modeling Tool)[4]的功能是定义工作流程逻辑的形式化工具,通常包括一组图标、标签和规则,同时为用户还提供友好和可视化的界面,另外,有些工作流建模工具还包括工作流仿真、优化、正确性验证等分析功能。工作流建模工具不仅提供了建立工作流逻辑的工具,而且还提供了统一的语言以便于不同的用户之间进行交流、讨论。
业务流程服务模型由业务流程服务和基于WEB的业务流程管理器及设计组成。基于WEB的业务流程管理器及设计器通过企业服务总线ESB调用业务流程服务的功能,务流程服务通过企业总线ESB调用其它原子服务[4]。模型如图1所示。
图1 业务流程服务模型
下面是数据仓库业务流程执行语言的实例,它的作用先更新C4.5决策树数据挖掘模型。如果更新成功,则返回分析此挖掘模型的URL地址,如果更新失败,则返回错误消息。此业务流程只能通过用户调用才可以执行。详细描述如下所示:
<definition>
<business>
<name>分析C4.5决策树</name>
<business-type>分析业务流程</business-type>
<description>先将C4.5决策树数据挖掘模型。如果成功,则返回
分析此模型的URL地址。如果失败,则返回错误消息。
</description>
</business>
<trigger>
<invoke-trigger>
<enabled>true</enabled>
</invoke-trigger>
<timer_trigger>
<enabled>false</enabled>
<frequents></frequents>
</timer_trigger>
</trigger>
<process>
<start/>
<refresh-mining-modeln name="refresh-C4.5-tree">
<input>
<model-name>C4.5决策树模型</model-name>
</input>
</refresh-mining-model>
<if name="refresh-success-if">
<logical-expression>
refresh-C4.5-tree.output.success==true
</logical-expression>
<sub-process>
<analyze-mining-model name="C4.5-treeanalysis">
<input>
<model-name>C4.5决策树模型
</model-name>
</input>
</analyze-mining-model>
</sub-process>
</if>
<if name="refresh-failure-if">
<logical-expression>
refresh-C4.5-tree.output.success==false
</logical-expression>
<sub-process>
<system-message name="failure-message">
<input>
<message>更新C4.5决策树模型失败</message>
</input>
</system-message>
</sub-process>
</if>
<end/>
</process>
</definition>
本论文的研究目标:提出一种基于工作流的分布式数据仓库模型。此模型是分布式的,可以灵活定制数据提取需求、分析挖掘需求及结果可视化需求,并且避免在局部数据仓库和全局数据仓库重复存储相同的数据。还分析当前国内外的分布式数据仓库的体系结构,并得出它们存在的缺点。为了克服当前存在的缺点,就提出了一种分布式的、易用的、终端用户可定制的、新型的分布式数据仓库模型。此模型基于SOA体系结构、工作流技术及分布式数据仓库技术[4-6]。如下图2所示:
图2 基于工作流的分布式数据仓库
此模型分为两部分:全局数据仓库和局部数据仓库。全局数据仓库和局部数据仓库是地理上分布的,例如,集团式的公司在不同的地区设有办事处或部门,办事处或部门使用局部数据仓库分析本部分或办事处的数据,集团的总部使用全局数据仓库分析各局部数据仓库汇聚的数据。
全局数据仓库和局部数据仓库都基于SOA的体系结构,将各种数据、统计分析和分析可视化功能都封装成Web服务。业务流程服务用于组合各种功能的Web服务,为用户提供定制分析挖掘的功能[4]。
本文通过分析当前的数据仓库及分布式数据仓库的构架,得出它们的缺点:不能进行灵活的定制、易用性差、分布式数据仓库为了保持局部数据仓库和全局数据仓库的一致性需要购买昂贵及大量的设备。为了克服以上的数据仓库和分布式数据仓库的缺点,本文将多种流行的理论与技术引入到分布式数据仓库模型中,以此提出了一种基于工作流的分布式数据仓库模型。并且对模型中的关键及创新部分进行了详细的叙述。本论文的主要工作是
1)提出了基于工作流的分布式数据仓库模型。此模型是分布式的、可灵活的定制数据提取需求、分析控制需求及可视化的需求,并且提出了局部数据仓库和虚拟全局数据仓库以此来解决当前分布式数据仓库的缺点。
2)提出了业务流程服务的实现模型。结合实现应用提出了一种数据仓库业务流程执行语言,另外基于Petri网提出了数据仓库业务流程网对业务流程进行可达性验证和优化。
[1]韩家炜.数据挖掘:概念与技术[M].北京:机械工业出版社,2000.
[2]Jensen M R,Moller T H,Pedersen T B.Specifying OLAP cubes on XML data[C].Scientific and Statistical Database Management,2001.
[3]William H Inmon.Building the Data Warehouse[M].HoboKen:John Wiley&Sons Inc,1993.
[4]Jiangbo Dang,Huhns M N.Inferring,Validating,and Coordinating the Commitments in aWorkflow[C].[s.l]:Web Services,2006.
[5]门鹏.基于Petri网的Web服务组合相关技术研究[D].西安:西安电子科技大学,2009.
[6]毛波.基于分布式数据仓库的OLAP分析与研究[D].北京:北京邮电大学,2004.
〔编辑 李海〕
A Study of Workflow-based Distributed Warehouse Model
LI Yue,YANG Cheng-quan
(School of Physics and Electronic Science,Shanxi Datong University,Datong Shanxi,037009)
Based on the architecture of the data warehouse and distributed datawarehouse system of the analysis,here are the current shortcomings:not flexible customization,poor use for users,having to purchase large and expensive storage device to store the same data in duplicate in order to maintain data consistency between global and local data warehouse.In response to these drawbacks,this paper presents a workflow-based distributed data warehouse model,the odel's overall structure is based on service-oriented architecture SOA,distributed.In the part of the Business Process Service's model,it proposed Business Process Execution Language for Warehouse,accessibility validation algorithm and optimization algorithm.
datamining;SOA;workflow;distributed warehouse
O211.7
A
1674-0874(2011)03-0020-04
2011-03-25
李玥(1983-),女,山西大同人,硕士,助教,研究方向:信号与信息处理。