一种数据共享服务智能编排技术的制作方法

文档序号:10535041阅读:575来源:国知局
一种数据共享服务智能编排技术的制作方法
【专利摘要】本发明公开了一种数据共享服务智能编排技术,包括:1、对数据交换业务逻辑进行细分,将各个步骤抽象成独立可复用的组件;2、对组件进行组装和连接,进一步形成更高层次的抽象实体即服务;3、通过组件和服务的抽象组合对不同厂商的数据库进行智能匹配,自动生成对应的数据交换服务。本发明通过组件和服务的抽象,对程序载体和业务逻辑进行了有效封装,剥离了大量底层实现细节,从而使开发实施人员更关注业务本身,极大简化了数据共享服务编写和实施的成本。
【专利说明】
一种数据共享服务智能编排技术
技术领域
[0001]本发明涉及一种以智能可视化方式对数据交换服务或组件进行定制的技术和方法。
【背景技术】
[0002]近年来随着政府信息化项目建设的深入铺开,政府各部门间的业务需要将各自的系统关联起来相互协作,因此需要进行大量的数据交换,这些系统往往是在不同时期由不同厂商开发实现的,并没有从全局上考虑到相关集成问题,这就需要数据交换平台提供数据交换程序予以解决。该程序凭借其基于标准的数据格式能够适配各种类型或接口的数据,集中处理,或者将结果返回给各系统,或者是作为中间平台转移中间数据,极大降低了系统重复建设的问题,减少了资金浪费。
[0003]但是目前这类数据交换程序都是手工进行编辑,然后再拷贝到对应的目标机器上运行,一方面不直观,另一方面一旦运行环境产生变化,比如所在机器网络地址调整,或者网络拓扑结构改变,就需要将上述过程重新执行一次,效率太低;有些虽然引入了版本控制的方式,也只是在开发层面进行弥补,即过分关注底层细节,而不是从数据交换业务整体流程的更高层次解决问题。

【发明内容】

[0004]本发明的目的在于提供一种数据共享服务智能编排技术,以解决上述【背景技术】中提出的问题。
[0005]为实现上述目的,本发明提供如下技术方案:
一种数据共享服务智能编排技术,对通用数据交换业务逻辑进行划分,根据共性开发出一系列包含业务基本功能的组件,组件能够通过配置不同的属性对组件进行复用;组件通过XML文件进行描述,一个组件就是一个树形结构,即根节点,其属性就是该根节点下的子节点,即树形数据结构中的叶,根节点之间通过一致的标签进行关联,从而形成了一条数据链,服务通过组件组合而成,服务数据链采用有向无环图的结构实现,具体为:确保数据处理流程的单向性,使得数据不会重复被处理,维持幂等性;确保作为节点的每一个组件都能够对数据进行处理;支持更复杂的数据处理流程;提供一定的并行化机制,使得在一个服务中能够和类似多线程程序一样同时对数据进行处理,在成熟的组件基础上,提供了智能化数据映射规则定义方法,包括:通过Groovy脚本语言为载体定义了一套规则映射转换的语法;一条数据映射规则定义就是一条程序语句,它包含了进行映射所需的所有信息,如数据源连接信息、数据表以及数据字段等,根据不同业务场景我们能够预设好服务编排流程,在选择对应业务场景后能够实现智能服务编排。
[0006]与现有技术相比,本发明的有益效果是:1、以组件和服务的抽象组合对程序载体和业务逻辑进行封装,剥离了底层实现细节,使相关人员能够更加关注业务本身,而不会被底层细节所困扰;2、针对不同数据库厂商的文档配置自动读取相应的程序文件,根据不同的业务场景定义好相关组件编排流程,实现智能服务编排。
【附图说明】
[0007]图1是服务/组件结构示意图;
图2是组件采用MVC模式的示意图;
图3是数据规则映射转换示意图;
图4是服务处理流程的DAG结构示意图。
【具体实施方式】
[0008]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0009]请参阅图1-4,一种数据共享服务智能编排技术,对通用数据交换业务逻辑进行划分,根据共性开发出一系列包含业务基本功能的组件,组件能够通过配置不同的属性对组件进行复用;组件通过XML文件进行描述,一个组件就是一个树形结构,即根节点,其属性就是该根节点下的子节点,即树形数据结构中的叶,根节点之间通过一致的标签进行关联,从而形成了一条数据链,服务通过组件组合而成,服务数据链采用有向无环图的结构实现,具体为:确保数据处理流程的单向性,使得数据不会重复被处理,维持幂等性;确保作为节点的每一个组件都能够对数据进行处理;支持更复杂的数据处理流程;提供一定的并行化机制,使得在一个服务中能够和类似多线程程序一样同时对数据进行处理,在成熟的组件基础上,提供了智能化数据映射规则定义方法,包括:通过Groovy脚本语言为载体定义了一套规则映射转换的语法;一条数据映射规则定义就是一条程序语句,它包含了进行映射所需的所有信息,如数据源连接信息、数据表以及数据字段等,根据不同业务场景我们能够预设好服务编排流程,在选择对应业务场景后能够实现智能服务编排。
[0010]本发明的工作原理是:组件是服务编排的基础,为了展现组件,进行组件拖拽操作以及对组件属性进行编辑,本发明的实施步骤如下:整体采用MVC模式,即模型(Model)、视图(View)和控制器(Controller);模型用于表示任何抽象信息,因此本发明用它来表示组件;视图是各种用户界面对象,直接呈现在用户面前,本发明用它来绘制组件并进行展现;控制器介于模型与视图之间,用于视图输入事件,同时对视图和模型几个方面进行控制、协调和更新,本发明用它来作为组件编辑的主要控制机制;在图1中,SOl,表示用户通过移动组件视图(间接)操作控制器;S02,组件控制器接收到用户操作指令,对组件模型进行直接操作,包括更新组件数据等;S03,组件模型得到更新,通过事件更新机制通知组件视图;S04,组件视图收到更新通知,根据通知内容对组件视图进行更新,使得组件模型最新的状态信息展现在用户面前。
[0011]关于服务/组件结构实现的实施例如图2所示,图中I表示组件,组件的属性如图中2所示,每一个组件有若干个属性;组件之间的数据流如图中3表示,组件之间相互连接之后,就从整体上构成了一个服务,如图中4所示。
[0012]图中5表示上述服务的XML文件描述,从业务层面逻辑到物理单元的映射关系分别如图中6、7、8、9表示,代表组件、属性、数据流和服务是如何通过XML进行描述的。关于数据规则映射转换的实施例的说明如图3所示,左侧表示源数据表,右侧表示目标数据表,两张表分别含有需要进行映射的字段;编辑映射规则时,从左侧选中字段生成箭头,拖至右侧需要进行映射的字段上,从而产生线,该连线即表示一条映射规则,其实施步骤如下所示:以上述MVC模式为基础并进行扩展;将源数据表与目标数据表视为模型,并在视图中予以展现,并分别指定MVC模式所要求的控制器,以便对源数据表和目标数据表进行编辑操作;图中I,鼠标点击动作将产生点击事件,并记录事件源,监听器监听到该事件,对事件进行解析,获得以下数据,包括:事件类型;事件源,表示产生该事件的组件;源数据表字段名称及类型;源数据库连接信息。
[0013]监听根据上述事件类型进行判断,此时监听器将该事件分派给对应的控制器进行处理,如连线控制器;连线控制器收到该事件,提取出事件源,并对视图进行修改,使之呈现出一个箭头,并新建一条映射规则,准备对该规则进行编辑,该映射规则数据由事件源所对应的组件模型提供。
[0014]图中2,在视图上拖动该箭头向右移动,事件监听器将持续对此过程所产生的事件进行跟踪,并将箭头改变的坐标数据分发给连线控制器,控制器接收到这些移动事件后,提取数据,更新视图,确保箭头能够正确出现在实际移动的位置上。
[0015]图中3,移动箭头到右侧对应的字段后,松开鼠标,再次产生事件,包含:事件类型,这里是鼠标按键松开事件;事件源,这里是右侧的数据字段;目标数据字段名称及类型;目标数据库连接信息。事件监听器会根据上述信息分配控制器:一是让连线控制器停止更新视图,二是更新组件模型中的映射规则,规则包含有源数据字段和目标数据字段的信息,包括:源数据字段名称及类型;目标数据字段名称及类型;源数据库连接信息;目标数据库连接信息;至此,一条映射规则编辑完成,组件控制器更新组件模型,并保存更新。
[0016]关于服务内部数据流程的DAG结构的实施例如图4所示:图中I是最简单的一种流程结构,只有一条流向。图中2是包含分支结构的服务流程,每一条支路都能够同时对数据进行处理,即实现并行化的目的。
[0017]图中3是更为复杂的一种服务流程,由图可见,DAG能够确保:每一个组件都是可达的,即每一个组件都能够对数据进行处理;数据流向始终是单向的,不会形成回路,确保数据处理的幂等性质;图中4、5、6的组件节点可同时发起数据处理流程,达到并行化的目的;可以支持更复杂的流程结构,只要满足以上性质。
【主权项】
1.一种数据共享服务智能编排技术,其特征在于,对通用数据交换业务逻辑进行划分,根据共性开发出一系列包含业务基本功能的组件,组件能够通过配置不同的属性对组件进行复用;组件通过XML文件进行描述,一个组件就是一个树形结构,即根节点,其属性就是该根节点下的子节点,即树形数据结构中的叶,根节点之间通过一致的标签进行关联,从而形成了一条数据链,服务通过组件组合而成,服务数据链采用有向无环图的结构实现,具体为:确保数据处理流程的单向性,使得数据不会重复被处理,维持幂等性;确保作为节点的每一个组件都能够对数据进行处理;支持更复杂的数据处理流程;提供一定的并行化机制,使得在一个服务中能够和类似多线程程序一样同时对数据进行处理,在成熟的组件基础上,提供了智能化数据映射规则定义方法,包括:通过Groovy脚本语言为载体定义了 一套规则映射转换的语法;一条数据映射规则定义就是一条执行程序语句,包含了进行映射所需的所有信息,如数据源连接信息、数据表以及数据字段等,根据不同业务场景预设好服务编排流程,在选择对应业务场景后就能够实现智能服务编排。
【文档编号】G06F17/30GK105893591SQ201610216025
【公开日】2016年8月24日
【申请日】2016年4月10日
【发明人】张天际
【申请人】广州金越软件技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1