基于自适应规则的数据交换系统技术方案

技术编号:20425277 阅读:52 留言:0更新日期:2019-02-23 08:32
本发明专利技术涉及基于自适应规则的数据交换系统,包括发送端和接收端,其中,发送端用于预先定义发送规则,接收端用于预先定义接收规则,发送端发送文件或命令给目标域,则直接利用Sending‑Rule中描述的规则进行处理。接收端用于接收发送端的文件,接收到同步过来的内容后,按照接收规则处理文件,实现数据交换,利用本发明专利技术的技术方案可以很高效地满足业务需求的从源端到目标端的多源异构数据交换需求。

【技术实现步骤摘要】
基于自适应规则的数据交换系统
本专利技术涉及一种基于自适应规则的数据交换系统。
技术介绍
以互联网为代表的“信息高速公路”近年来的快速发展,实现了人、机、物三元世界的快速融合,在颠覆了人们生活方式的同时,也带来了数据规模的爆炸式增长,据预测,未来10年全球的数据将增加50倍,对数据的存储、处理及交换技术提出了较高的要求。目前,数据存储的方式众多,包括多种关系型数据库、非关系型数据库、本地文件存储、分布式文件存储等,面对如此众多的数据源,要实现不同数据源、不同数据中心的数据交换的问题是当前数据交换技术要解决的一个难点,
技术实现思路
本专利技术通过自适应规则的数据交换技术,提供一种自适应规则可定制化、过程自动化、规则化、事件驱动化的数据交换解决系统,实现上述目的的技术方案如下:基于自适应规则的数据交换系统部署在本地域和目标域的主机上,所述客户端之间通过基于自适应规则的数据交换系统发送文件和/或接收文件,所述客户端分别为发送客户端、接收客户端,基于自适应规则的数据交换系统包括发送端和接收端;发送端匹配发送客户端,通过发送端将发送客户端的文件发送出去,接收端匹配接收客户端,通过接收端将发送客户端的文件接收。其中,发送端用于定义发送规则,接收端用于定义接收规则,发送和接收规则可分为识别规则和处理规则,并可以定义多个,由规则引擎控制不同规则间的分支、回溯。本专利技术中,所述发送客户端和接受客户端都可以互相发送文件和接收文件。发送端发送文件或命令给目标域(即接收方),如果不指定目标域,则直接利用Sending-Rule中描述的进行处理。接收端用于接收发送端的文件,接收到发送的内容后,按照发送端的发送规则处理文件,实现数据交换。基于自适应规则的数据交换技术核心技术是通过在发送端定义各种发送规则,使得数据文件在发送时,可以根据被处理数据的特征,基于用户定义的规则,自动调整处理方法、处理顺序、处理参数、边界条件或约束条件,使其与所处理数据的业务特征、分布特征、结构特征相适应进而完成数据文件发送,并且在接收端也可以定义多种接收规则,并采用智能匹配的方式完成业务所需数据文件的筛选和处理,从而实现数据交换交换过程。附图说明图1为本专利技术整体系统示意图;图2为数据交换过程示意图;图3为规则定义示意图;具体实施方式下面结合附图对本专利技术做详细的说明。基于自适应规则的数据交换技术支持多种操作系统平台,为了便于将基于自适应规则的数据交换技术移植到新的操作系统和硬件体系结构上,专门开发了核心库。核心库对OS和硬件作了统一的抽象,提供多种基本功能和平台功能,并且确保这些功能在所有平台上都有一致的接口和行为。使用基于自适应规则的数据交换技术的应用程序(简称应用程序)可以通过使用本技术的Java接口来实现自己的业务逻辑,如果将应用程序应用到其他设备,只要通过Java接口就可以将本专利技术中的技术方案应用到其他设备。基于自适应规则的数据交换技术利用分布式消息中间件—数流控制系统完成域域之间的控制和消息传递,数据复制和同步直接采用点对点的网络通讯。并结合实际业务需求进行规则的构建和开发,完成其业务目的。其工作原理介绍如下:(1)发送端(源域)在一次数据交换过程中,交换的初始发起机关或者发送者,发送端用于定义和发送相关的规则(Sending‐Rule)。发送端(源域)发送文件(或命令)给目标域(如果不指定,则直接利用Sending‐Rule中描述的规则进行处理。(2)接收端(目标域)在一次数据交换过程中,交换的最终接收机关或者接收者。接受到同步过来的内容后,按照接收规则(Receiving‐Rule)定于的策略进行处理(保存还是作为命令处理)。在数据交换过程中,基于自适应规则的数据交换技术会利用数据交换技术的程序注册的监听器(ReplNotificationListener)跟应用进行交互,从而完成客户业务需要。(3)Agent,泛指Agent进程,指Agent进程对外提供服务的Agent地址信息,本专利技术中指多通道数据共享分发技术的业务代理。(4)Bitsflow:消息中间件,用于解决分布式环境下复杂的通讯和数据传输问题。(5)LMDB数据库:全称是LightningMemory-MappedDatabase,闪电般的内存映射数据库。它文件结构简单,一个文件夹,里面一个数据文件,一个锁文件。数据随意复制,随意传输。它的访问简单,不需要运行单独的数据库管理进程,只要在访问数据的代码里引用LMDB库,访问时给文件路径即可。(6)LocalFS本地文件系统(7)DataCellFS分布式文件系统(8)Bitsflow:消息中间件,用于解决分布式环境下复杂的通讯和数据传输问题。(9)Yoyorepl:可靠的文件传输控制系统。本专利技术中,发送端用于发送数据,支持从多种数据源读取并发送数据,包括本地文件系统、分布式文件系统、关系型数据库、非关系型数据库上读取数据,并支持自定规则的对数据进行处理。下面再详细的描述数据的交换过程:基于自适应规则的数据交换技术数据交换过程如图2所示:基于自适应规则的数据交换技术主要目的是通过解析及智能匹配发送端和接收端的规则定义,将文件可靠地传输到远程客户端的过程,即使在多种不利条件下,如不可用的远程主机、网络通信查、系统崩溃所引发的问题等情况下,基于自适应规则的数据交换以多通道数据共享分发技术的群组通信和逻辑地址为底层支撑,可以高效、稳定地完成数据的传输过程。基于自适应规则的数据交换技术支持多种文件系统和DataCell格式;支持通过NULL存储类型可靠地发送控制数据;其良好的兼容性,不仅支持相同平台之间(如Linux与Linux)的数据同步交换,也支持跨平台(如Linux与Windows)之间的数据同步交换,其交换过程介绍如下:(1)发送客户端通过agent进程发送一个提交文件的请求到本地Yoyorep进程。在失败的情况下Yoyorepl会保存本请求到LMDB数据库,LMDB数据库是Yoyorepl进程内置数据库。(2)Yoyorepl进程从本地文件系统或分布式文件系统DataCellFS打开文件,然后按照发送规则处理此文件。Yoyorepl进程试图按照发送规则中的条件匹配文件元数据,如果匹配,则执行相关操作,通常会将文件发送给指定域(即目标域)中远程Yoyorepl进程。本地Yoyorepl进程会为每个域(即本地域和目标域)创建文件传输作业,将作业保存到LMDB数据库,并将作业队列发送到发送端的发送队列。(3)本地Yoyorepl进程的线程会捡取队列中的第一个作业,然后开始发送文件到远程Yoyorepl进程;远程Yoyorepl进程发送一个确认信息到本地Yoyorepl进程。本地Yoyorepl进程跟踪发送进度直到文件传输完成。如果文件传输过程中Yoyorepl进程(包括本地和远程的Yoyorepl进程)关闭或者崩溃,本地Yoyorepl进程可以从最后确认的文件偏移处恢复发送。(4)当文件传输完成后,本地Yoyorepl进程会发送一个传输完成信息到远程Yoyorepl进程,触发远程Yoyorepl的文件的处理。(5)远程Yoyorepl进程会按照接收规则处理接收到的文件。如果该文件的元数据与接收规则的条件相匹配,则执行相关操作,通常会将本文档来自技高网...

【技术保护点】
1.基于自适应规则的数据交换系统,所述客户端之间通过基于自适应规则的数据交换系统发送文件和/或接收文件,所述客户端为发送客户端、接收客户端,基于自适应规则的数据交换系统包括发送端和接收端,其特征在于:发送端和接收端都能够自定义规则,其中,发送端用于定义发送规则,接收端用于定义接收规则,发送规则和接收规则能够分为识别规则和处理规则,并能够定义多个,由规则引擎控制不同规则间的分支、回溯;发送端发送文件或命令给目标域,如果不指定目标域,则直接利用发送规则中描述的规则进行处理;接收端用于接收发送端发送的数据,接收到数据之后,按照接收规则处理数据,实现数据交换。

【技术特征摘要】
1.基于自适应规则的数据交换系统,所述客户端之间通过基于自适应规则的数据交换系统发送文件和/或接收文件,所述客户端为发送客户端、接收客户端,基于自适应规则的数据交换系统包括发送端和接收端,其特征在于:发送端和接收端都能够自定义规则,其中,发送端用于定义发送规则,接收端用于定义接收规则,发送规则和接收规则能够分为识别规则和处理规则,并能够定义多个,由规则引擎控制不同规则间的分支、回溯;发送端发送文件或命令给目标域,如果不指定目标域,则直接利用发送规则中描述的规则进行处理;接收端用于接收发送端发送的数据,接收到数据之后,按照接收规则处理数据,实现数据交换。2.根据权利要求1所述的基于自适应规则的数据交换系统,其特征在于:其中,数据交换过程如下:(1)发送客户端通过agent进程发送一个提交文件的请求到本地Yoyorep进程,如果发送失败,本地Yoyorepl进程会保存请求到发送端的LMDB数据库;(2)本地Yoyorepl进程从发送端的文件系统或DataCell打开文件,然后按照发送规则处理此文件;本地Yoyorepl进程试图按照发送规则中的条件匹配文件元数据,如果匹配,则执行相关操作,将文件发送给目的域中远程Yoyorepl进程;本地Yoyorepl进程会为每个域创建文件传输作业,将作业保存到发送端的LMDB数据库,并将作业队列发送到发送端的发送队列;(3)本地Yoyorepl进程的线程捡取队列中的第一个作业,然后开始发送文件到远程...

【专利技术属性】
技术研发人员:姚宏宇
申请(专利权)人:北京友友天宇系统技术有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1