发明名称 一种基于BPEL语言构建数据密集型工作流引擎的方法及其系统
摘要 一种基于BPEL语言构建数据密集型工作流引擎的方法及其系统,包括建立基于规则的模型转换框架;建立部署执行层面的转换框架;根据Hadoop工作流模型生成BPEL流程模型,部署到BPEL引擎执行。本发明支持采用BPEL语言定义复杂的Hadoop工作流;方便企业将Hadoop工作流集成入企业内部系统或者将企业内部服务集成入Hadoop工作流,可以满足企业在业务流程中处理海量数据的需求。
申请公布号 CN103761111A 申请公布日期 2014.04.30
申请号 CN201410056681.3 申请日期 2014.02.19
申请人 中国科学院软件研究所 发明人 刘杰;叶丹;朱锋;魏峻
分类号 G06F9/44(2006.01)I;G06F17/30(2006.01)I 主分类号 G06F9/44(2006.01)I
代理机构 北京科迪生专利代理有限责任公司 11251 代理人 成金玉
主权项 一种基于BPEL语言构建数据密集型工作流引擎的方法,其特征在于包括以下各步骤:(1)建立基于规则的模型转换框架,具体实现为:(11)定义Hadoop工作流元模型和BPEL服务的元模型;(12)根据语义建立Hadoop工作流元模型与BPEL流程元模型的映射规则,即Hadoop工作流元模型中的分支fork元素对应于BPEL流程元模型中的flow元素,Hadoop工作流元模型中的活动元素对应于BPEL服务元模型中的伙伴链接;(2)根据映射规则,建立从Hadoop工作流模型到BPEL流程模型的模型转换算法,具体实现如下:(21)采用的转换策略是自顶向下的,每个Hadoop工作流模型表示为有向无环图,转换后,输出为BPEL流程模型;(22)每个Hadoop工作流模型包含一个StartVnode和一个EndVnode作为工作流的开始和结束节点;(23)统计所有的输入元素,为BPEL模型添加Variables元素,然后依次提取Hadoop工作流模型中节点对象进行翻译,判断其类型,若是活动节点,则将其翻译成基本的活动,若是控制节点,则首先翻译赋值语句,然后根据控制节点类型,翻译为不同的控制节点对象,重复这个过程,直到Hadoop工作流模型所有元素处理完毕,得到BPEL流程模型;(3)自动部署执行转换生成的BPEL流程模型,具体实现如下:(31)根据BPEL流程模型描述文件,生成服务部署文件;(32)将BPEL流程模型描述文件、BPEL流程中各节点对应的任务的可执行代码和BPEL流程服务部署文件一起打成部署包;(33)将部署包放置到BPEL引擎中,发布服务;(34)当用户发送执行命令,执行BPEL流程。
地址 100190 北京市海淀区中关村南四街4号