一种基于数据总线技术实现数据交换的方法及装置与流程

文档序号:12701935阅读:284来源:国知局
一种基于数据总线技术实现数据交换的方法及装置与流程
本发明涉及智能交通领域,尤其涉及一种基于数据总线技术实现数据交换的方法及装置。

背景技术:
目前国内智能交通领域外场采集设备的现状是没有业界通用的行业标准,充斥着不同厂家标准和地方标准,因此建设智能交通应用系统就需要开发大量的接口程序来接入不同厂家的设备,或者由系统开发方提供企业标准让设备供应商去修改接口,图1是交通领域中常见的一种数据集成方式,现有的数据交换过程是依照厂家提供的协议进行定制开发,针对每种数据源都要进行定制开发,以某厂家的电子警察数据为例,前端设备通过FTP(文件传输协议)将图片传送到中心系统,通过Socket协议将信息传送到中心,由于中间要经过防火墙进入专网,图片可通过FTP默认端口直接通过防火墙,信息需从Socket协议解析为XML格式后通过访问专网内的Web服务接口传入,存储到中心数据库中,目前没有一种简便易行的方案可以实现不同厂家设备的快速集成,采集设备制造厂家或者是集成厂家要做大量的集成工作,包括协议转换、消息体转换、数据校验、数据标准化等工作,这造成智能交通项目的软件实施过程变成了接口定制开发的过程;此外出于安全考虑,数据从外场采集设备到中心系统往往要经过网闸或防火墙,数据格式需要转换为特定协议才能传递到中心机房,这需要增加额外的协议转换过程。

技术实现要素:
本发明的目的在于提出一种基于数据总线技术实现数据交换的方法及装置,能够大大简化智能交通项目的集成过程,提高了流程的灵活度,缩短了接口开发的工作周期。为达此目的,本发明采用以下技术方案:一种基于数据总线技术实现数据交换的方法,包括:步骤a、建立基于数据总线技术的数据交换组件库,所述数据交换组件库由可重用的组件组成;步骤b、当有数据需要交换时,对数据交换所涉及的接口协议进行分析;步骤c、判断所述接口协议内的传输协议和消息格式是否为所述数据交换组件库中已有组件,若是,则直接通过配置发布单元进行处理,若否,则将所述传输协议和消息格式开发为传输协议转换组件和消息格式转换组件,并将所述传输协议转换组件和消息格式转换组件部署到所述数据交换组件库中;步骤d、根据接口协议进行交换服务配置,在数据总线中发布交换服务;步骤e、根据交换机制对所述交换服务执行数据交换。其中,交换服务配置包括交换机制和路由规则。其中,交换机制具体为:步骤e1、判断交换服务消息处理方式,若交换服务消息处理方式为主动消息处理,则根据抽取规则主动从源协议中获取数据;若交换服务消息处理方式为被动消息处理,则监听对应传输协议的触发器,通过触发器启动数据接收过程,并完成数据的接收、处理和存储。其中,步骤e1之后还包括:步骤e2、获得数据后将数据发送到传输协议转换组件和消息格式转换组件进行处理;步骤e3、根据交换服务的路由规则将数据发送到目的协议;步骤e4、数据发送完成后,进行数据交换状态判定,若交换失败则根据交换服务配置的异常处理机制进行处理。其中,数据交换的流程由控制组件负责控制,所述控制组件负责身份和权限管理,数据流程监控以及数据规范管理。一种基于数据总线技术实现数据交换的装置,包括:数据库建立单元,用于建立基于数据总线技术的数据交换组件库,所述数据交换组件库由可重用的组件组成;分析单元,用于当有数据需要交换时,对数据交换所涉及的接口协议进行分析;第一判断单元,用于判断所述接口协议内的传输协议和消息格式是否为所述数据交换组件库中已有组件,若是,则直接通过配置发布单元进行处理,若否,则将所述传输协议和消息格式开发为传输协议转换组件和消息格式转换组件,并将所述传输协议转换组件和消息格式转换组件部署到所述数据交换组件库中;配置发布单元,用于根据接口协议进行交换服务配置,在数据总线中发布交换服务;数据交换单元,用于根据交换机制对所述交换服务执行数据交换。其中,配置发布单元的交换服务配置包括交换机制和路由规则。其中,数据交换单元包括:第二判断单元,用于判断交换服务消息处理方式,若交换服务消息处理方式为主动消息处理,则根据抽取规则主动从源协议中获取数据;若交换服务消息处理方式为被动消息处理,则监听对应传输协议的触发器,通过触发器启动数据接收过程,并完成数据的接收、处理和存储。其中,数据交换单元还包括:转换处理单元,用于获得数据后将数据发送到传输协议转换组件和消息格式转换组件进行处理;发送单元,用于根据交换服务的路由规则将数据发送到目的协议;异常处理单元,用于数据发送完成后,进行数据交换状态判定,若交换失败则根据交换服务配置的异常处理机制进行处理。其中,数据交换的流程由控制组件负责控制,所述控制组件负责身份和权限管理,数据流程监控以及数据规范管理。本发明的有益效果为:一种基于数据总线技术实现数据交换的方法,包括:建立基于数据总线技术的数据交换组件库,所述数据交换组件库由可重用的组件组成;当有数据需要交换时,对数据交换所涉及的接口协议进行分析;判断所述接口协议内的传输协议和消息格式是否为所述数据交换组件库中已有组件,若是,则直接进入下一步骤,若否,则将所述传输协议和消息格式开发为传输协议转换组件和消息格式转换组件,并将所述传输协议转换组件和消息格式转换组件部署到所述数据交换组件库中;根据接口协议进行交换服务配置,在数据总线中发布交换服务;根据交换机制对所述交换服务执行数据交换,本发明可重用组件库的设计大大简化了智能项目的集成过程,非编程的交换服务配置降低了系统集成的技术难度,提高了流程的灵活度,便于针对业务变化便捷的改变数据处理流程。附图说明图1是现有技术数据交换过程示意图;图2是本发明基于数据总线技术实现数据交换方法流程示意图;图3是本发明交换机制流程示意图;图4是本发明基于数据总线技术实现数据交换的装置结构示意图;图5是本发明数据交换单元结构示意图;图6是企业总线服务结构图;图7是企业总线服务开发维护费用对比示意图。具体实施方式下面结合图2-图7并通过具体实施方式来进一步说明本发明的技术方案。如图2所示,一种基于数据总线技术实现数据交换的方法,包括:步骤a、建立基于数据总线技术的数据交换组件库,所述数据交换组件库由可重用的组件组成;步骤b、当有数据需要交换时,对数据交换所涉及的接口协议进行分析;步骤c、判断所述接口协议内的传输协议和消息格式是否为所述数据交换组件库中已有组件,若是,则直接进入步骤d,若否,则将所述传输协议和消息格式开发为传输协议转换组件和消息格式转换组件,并将所述传输协议转换组件和消息格式转换组件部署到所述数据交换组件库中;步骤d、根据接口协议进行交换服务配置,在数据总线中发布交换服务;步骤e、根据交换机制对所述交换服务执行数据交换。在本实施例中,本发明通过数据总线技术实线不同厂家不同类型设备的数据集成,将现有设备的点对点数据交换流程进行分解,按照业务逻辑拆分成可重用的组件,定制开发和扩展数据总线的传输协议转换、消息转换等组件,形成一个交通集成项目数据交换组件库,由总线的流程控制组件对集成过程进行编排和控制,这样针对特定厂家只需从库中挑选对应组件进行组合,通过配置文件采用XML格式来定义数据内容和数据交换流程,在数据总线中进行发布后,由控制组件负责数据流程的控制,实现外场设备和中心系统的数据交换,所述中心系统是后台数据处理中心的总称,外场设备的数据通过数据总线的控制接入中心系统。在本实施例中,组件库的完善是本发明成功的关键,随着项目的积累组件库基本涵盖行业中的常用协议后,项目实施只需通过组件库的协议复用而不需进行定制开发,就可满足数据交换的需求;通过非编程的配置方式实现数据交换流程控制主要是降低了系统集成的技术难度,提高了流程的灵活度,便于针对业务变化便捷的改变数据处理流程,此外基于XML格式的配置文件,也为图形化的流程配置提供了基础。在本实施例中,XML(Extensiblemarkuplanguage)可扩展标记语言,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。在本实施例中,将数据交换流程中可重用的部分分类包装成组件,通过总线实现路由控制和传输协议转换功能。数据交换过程主要涉及如下几类组件:控制组件,控制组件负责身份和权限管理,数据流程监控,以及数据规范管理等;服务转换组件,是指传输协议转换组件和消息格式转换组件,包括数据总线自带的标准组件和定制开发的组件;交换服务,是指通过传输协议转换组件和消息格式转换组件实现交换规则,规则包括消息处理规则和路由规则,其中消息处理规则主要用于对数据自动发送和接收的周期设置;路由规则主要用于转换组件间的执行顺序和处理逻辑;包装服务,将系统设计的内部、外部可重用业务功能包装为服务,通过服务总线发布,实现应用集成,可通过服务编排实现组合服务;适配器,是指外部系统与数据总线之间进行数据交换的中间层,可采用数据库、消息、文件等方式实现数据中转,信息采集时按照对应的业务逻辑从数据源抽取数据,发送给对应的交换服务实现数据采集;信息发布时将交换服务发送过来的信息按照特定的传输链路传递给接收端。在本实施例中,数据源是提供某种所需要数据的器件或原始媒体,常用的数据源有:观测数据,即现场获取的实测数据,它们包括野外实地勘测、量算数据,台站的观测记录数据,遥测数据等;分析测定数据,即利用物理和化学方法分析测定的数据;图形数据,各种地形图和专题地图等;统计调查数据,各种类型的统计报表、社会调查数据等;遥感数据,由地面、航空或航天遥感获得的数据。中国的数据源数量庞大。如:全国范围的土地资源清查及详查数据,航空摄影测量图像和国土普查卫星资料已覆盖全国,定位、半定位观测站网遍布全国,有地面调查、地图测绘等大量数据。在本实施例中,交换服务采用配置方式而非程序开发方式实现数据交换规则,数据交换的整个过程是按预先定义的服务配置信息执行的,通过配置信息的改变可以实现业务系统交换需求的变化,交换服务配置包括交换机制和路由规则,具体内容如下:数据交换涉及的消息格式转换组件和传输协议转换组件;数据采集时需要对数据接收、数据抽取机制进行定义,包括数据来源、接收时间、接收情况检查;数据发布时需要配置发送格式、方式及目的地,异常处理机制等;通过配置设置数据交换涉及的用户认证信息、日志、数据审计、事务等交换保障规则,所述事务是保证数据处理完整性的最小单元,不可拆分;在本实施例中,数据传输方式有两种:同步和异步,可在路由规则中进行设置,当数据量较大时,受网络传输速度限制,短时间内无法完成交换,可采用异步交换方式,即业务系统提交一个交换任务后,不需等待任务处理结果返回,由控制组件在后台完成交换管理;当数据量较小、即时性要求较高时,可采用同步交换方式,即系统提交一个交换任务后阻塞等待,直到数据成功送达对方并返回交换结果。如图3所示,在本实施例中,交换机制具体为:步骤e1、判断交换服务消息处理方式,若交换服务消息处理方式为主动消息处理,则根据抽取规则主动从源协议中获取数据;若交换服务消息处理方式为被动消息处理,则监听对应传输协议的触发器,通过触发器启动数据接收过程,并完成数据的接收、处理和存储。在本实施例中,若交换服务消息处理方式为主动消息处理,则根据抽取规则主动从源协议中获取数据,如定时从数据库、文件中获取数据;若交换服务消息处理方式为被动消息处理,则监听源协议,接收数据写入,如Socket、JMS、WS。在本实施例中,Socket通常称作"套接字",用于描述IP地址和端口,是一个通信链的句柄。根据连接启动的方式以及本地套接字要连接的目标,套接字之间的连接过程可以分为三个步骤:服务器监听,客户端请求,连接确认。服务器监听:是服务器端套接字并不定位具体的客户端套接字,而是处于等待连接的状态,实时监控网络状态。客户端请求:是指由客户端的套接字提出连接请求,要连接的目标是服务器端的套接字。为此,客户端的套接字必须首先描述它要连接的服务器的套接字,指出服务器端套接字的地址和端口号,然后就向服务器端套接字提出连接请求。连接确认:是指当服务器端套接字监听到或者说接收到客户端套接字的连接请求,它就响应客户端套接字的请求,建立一个新的线程,把服务器端套接字的描述发给客户端,一旦客户端确认了此描述,连接就建立好了。而服务器端套接字继续处于监听状态,继续接收其他客户端套接字的连接请求。JMS即Java消息服务(JavaMessageService)应用程序接口是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。Java消息服务是一个与具体平台无关的API,绝大多数MOM提供商都对JMS提供支持,Webservice可以理解为是一个应用程序,它向外界暴露出一个能够通过Web进行调用的API(ApplicationProgrammingInterface,应用程序编程接口)。在本实施例中,步骤e1之后还包括:步骤e2、获得数据后将数据发送到传输协议转换组件和消息格式转换组件进行处理;步骤e3、根据交换服务的路由规则将数据发送到目的协议;步骤e4、数据发送完成后,进行数据交换状态判定,若交换失败则根据交换服务配置的异常处理机制进行处理。在本实施例中,数据交换过程由数据审计组件如数据审计日志来进行过程保障,由控制组件控制交换的执行,如图3所示,数据交换状态判定前,数据交换过程可经由数据审计日志,也可直接进行数据传递;数据交换状态判定后,若数据交换成功,则直接结束,若数据交换失败,则根据交换服务配置的异常处理机制进行处理。在本实施例中,数据交换的流程由控制组件负责控制,所述控制组件负责身份和权限管理,数据流程监控以及数据规范管理。在本实施例中,数据总线技术保证了开发成本上的优势,企业总线服务(ESB)是一个实现了通信、互连、转换、可移植性和安全性标准接口的企业基础软件平台,它是由中间件技术实现并支持SOA(ServiceOrientedArchitecture,面向服务架构)的一组基础架构功能,支持异构环境中的服务、消息以及基于事件的交互,并且具有适当的服务级别和可管理性。ESB试图将应用服务器上的多种逻辑层面迁移到总线以及连接点上,从而降低企业内部信息共享的成本。作为SOA基础架构的关键部分,ESB的功能主要体现在通信、服务交互、应用集成、服务质量、安全性以及管理和监控等方面。在通信方面,ESB能够支持消息路由/寻址,支持多种通信技术、通信协议(如JMS、HTTP),支持发布/订阅的通信模式,能够处理请求/响应、同步以及异步的消息传递方式,并且要求以可靠的方式传递消息。服务交互方面,ESB上所发布的服务是以当前标准的Web服务描述语言(WebServicesDescriptionLanguage)来定义Web服务的,并且ESB上通常配备有服务目录和发现机制。ESB的重要功能就是集成不同的系统,必须能够支持多种接入ESB的方式(例如将ESB、WebService、CORBA以及使用Socket等方式访问的遗留系统接入到ESB系统),将接入的系统映射成Web服务。在集成不同系统的同时,必须考虑服务质量方面的问题,如事务性和消息传递的可靠性。对于关键的Web服务,ESB需要以加密的方式进行消息传递,并且必须验证访问者的权限。ESB软件作为SOA基础架构的一个复杂子系统,还必须配有相应的管理和监控功能,用于ESB软件自身的系统管理、日志记录、测量和监控等。ESB是解决传统模式所具有的缺陷的方案之一。它将数据收集组件与数据应用组件解耦,减少了数据通道的数量,并具有良好的可扩展性,如图6所示。使用数据总线技术的多对一模式后,系统的开发费用以及维护费用都将大大降低,如图7所示,图中,横轴为连接数量,纵轴为开发成本,断续线表示的曲线为多对多系统的开发成本,连续线表示的曲线为采用数据总线技术的系统的开发成本,显然,数据总线技术在开发成本上更具有优势。如图4所示,一种基于数据总线技术实现数据交换的装置,包括:数据库建立单元,用于建立基于数据总线技术的数据交换组件库,所述数据交换组件库由可重用的组件组成;分析单元,用于当有数据需要交换时,对数据交换所涉及的接口协议进行分析;第一判断单元,用于判断所述接口协议内的传输协议和消息格式是否为所述数据交换组件库中已有组件,若是,则直接通过配置发布单元进行处理,若否,则将所述传输协议和消息格式开发为传输协议转换组件和消息格式转换组件,并将所述传输协议转换组件和消息格式转换组件部署到所述数据交换组件库中;配置发布单元,用于根据接口协议进行交换服务配置,在数据总线中发布交换服务;数据交换单元,用于根据交换机制对所述交换服务执行数据交换。在本实施例中,配置发布单元的交换服务配置包括交换机制和路由规则。在本实施例中,数据交换单元包括:第二判断单元,用于判断交换服务消息处理方式,若交换服务消息处理方式为主动消息处理,则根据抽取规则主动从源协议中获取数据;若交换服务消息处理方式为被动消息处理,则监听对应传输协议的触发器,通过触发器启动数据接收过程,并完成数据的接收、处理和存储。如图5所示,在本实施例中,数据交换单元还包括:转换处理单元,用于获得数据后将数据发送到传输协议转换组件和消息格式转换组件进行处理;发送单元,用于根据交换服务的路由规则将数据发送到目的协议;异常处理单元,用于数据发送完成后,进行数据交换状态判定,若交换失败则根据交换服务配置的异常处理机制进行处理。在本实施例中,数据交换的流程由控制组件负责控制,所述控制组件负责身份和权限管理,数据流程监控以及数据规范管理。以上所述仅为本发明的具体实施方式,这些描述只是为了解释本发明的原理,而不能以任何结构解释为对本发明保护范围的限制。基于此处的解释,本领域的技术人员不需要付出创造性的劳动即可联想到本发明的其它具体实施结构,这些结构都将落入本发明的保护范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1