欢迎来到专业的宏发范文网平台! 心得体会 党建材料 工作总结 工作计划 思想汇报 事迹材料 发言讲话 述职报告
当前位置:首页 > 范文大全 > 公文范文 > 正文

基于SOA的交换与采集系统

时间:2022-03-13 15:44:13 浏览量:

(内蒙古财经学院 计算机信息管理学院,内蒙古 呼和浩特 010070)
摘 要:文章介绍了采用SOA思想来设计及实现交换与采 集系统的方法,具体论述了系统的总体架构和实现方案。
关键词:面向服务的体系结构;XML;交换;采集;Web服务
中图分类号:TP311.13  文献标识码:A  文章编号 :1007—6921(2010)01—0088—02

面向服务的体系结构(Service-Oriented Architecture,SOA)是一个组件模型,它将应用 程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口 是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。 这使得构建在各种这样的系统中的服务以一种统一和通用的方式进行交互。现在的 SOA  有了进一步的发展,这些进展是以可扩展标记语言(eXtensible Markup Language,XML) 为基础的。通过使用基于 XML 的语言(称为 Web 服务描述语言(Web Services Definitio n Language,WSDL)来描述接口,服务已经转到更动态且更灵活的接口系统中。矿产资源信 息管理系统采用SOA架构,以XML作为系统之间数据交换的标准格式进行数据交换和采集 的。
1 系统概述

全国矿产资源信息管理系统,一方面需要从已建系统交换相关数据,另一方面获得各省(自 治区、直辖市)行政主管上报的数据,并需要预留接口将地下水数据发布到水资源综合管理 系统。为了规范以后的数据交换,保证数据的一致性和完整性提出了数据交换设计。

通用数据交换平台建立在SOA 体系架构的基础上, 以XML作为系统之间数据交换的标准格式,  利用Web Services将服务发布到Internet上, 根据业务、流程对Web组件进行动态的组合和 集成, 利用消息队列机制保证数据的传递,很好地实现了数据交换和共享目的。利用通用交 换平台可以构建一个扩展性好、资源占用少、松散耦合、复用性强、维护方便的集成系统。 
2 总体架构

整个系统采用SOA思想, 由数据层、交换层、集成层构成: 数据层由待交换的异构数据源组 成。交换层完成异构数据格式到XML式的双向转化,解决数据传输中格式不一致问题。集成层 包括数据中心, 系统管理, 交换管理, 数据接收、抽取、校验, 数据交换标准的发布等功能 , 它是整个交换系统的核心。系统的各个部分通过基于Web Services 的消息总线进行通信,  很好地解决了各部分之间的耦合问题, 充分体现了面向服务的思想。如图1所示。


2.1 数据层

数据主要来自各业务系统。数据源主要有以下4种存在方式:文件,数据库,XML文档,电子表格 。数据层通过连接不同的数据源提取原始数据后,对这些数据进行分析处理,抽取实际需要用 于数据交换的数据信息。
2.2 交换层

在该数据交换平台中, 各个参与数据交换的业务系统的数据是通过交换层进入交换平台的。 不同业务系统采用不同的数据源, 数据格式存在差异, 如何在各个异构系统之间以统一中间 格式(XML)表示数据是交换层必须解决的问题。数据库和XML之间的映射机制大体有两种: 基 于表的映射和基于对象的映射。由于业务系统中绝大多数的数据都储存在数据库中,所以业 务系统以关系数据库转换到XML来实现数据映射。其核心思想是: 将数据库的表转化为XML复 杂类型元素, 表的字段转化为该对象的简单类型子元素或者属性, 表的主外键关系转化为表 对应XML元素之间的父子关系。在具体转化过程中,把关系数据库到XML的转化规则存储 在一个映射文件中, 然后对映射文件进行解析生成最终的XML文件。对于不同的数据库只要 定义不同的映射文件就可以实现从数据库到XML的转化过程。
2.3 集成层

集成层完成系统内部各个不同的应用系统之间以及系统上下级之间的业务数据交换和整合,  是数据交换平台建设的核心。集成层系统结构如图2所示。


2.3.1 数据传输。负责接收各部门数据传输模块传递来的数据, 并将数据交给数据处理中心处理。从数据处理 中心取得数据, 按照各部门的数据交换标准,将数据封装成标准的XML格式, 利用数据传输平 台传递给各部门。
2.3.2 数据处理中心。①数据校验:根据系统管理中心的数据注册模块提供的交换标准对 提供的数据进行校验,包括格式校验、数据校验等。经校验,出错部分交给系统管理中心进行 差错处理,正确的数据则提交到数据队列模块。②数据队列:数据队列模块将经过校验的数据 排队,对接收到的数据进行缓冲,避免数据提供方长时间等待。利用数据队列机制可以使交换 中心各部分协同工作,有效利用多任务机制完成数据处理,提高系统效率。③数据分发:数据 分发模块负责将数据分发到指定目的地。目的地可能是一个,也可能是多个。暂时发送不成 功的数据将保留在数据队列中,等待重发,到达指定的失效期后转移到差错处理模块。④数据 抽取:数据抽取服务模块提供了直接从基层单位或其他系统抽取数据的功能。
2.3.3 系统管理。对数据交换平台中交换的数据进行注册、管理、监控, 以保证各项服务的正常运行。将异常 情况传递给系统日志模块以便差错处理模块进行差错处理, 将需要监控的数据进行控制处理 , 以用来对各部门数据交换情况进行监督。
2.3.4 Web服务管理。利用UDDI建立Web服务管理中心, 提供对Web的注册管理和发布功能。各数据交换节点代理向 管理中心注册自己的数据交换业务, 管理中心根据注册信息进行Web服务的路由, 并主动调 用数据交换节点的数据访问服务向数据交换节点传送数据或从数据交换节点获取数据。
3 实现方案
3.1 系统功能

利用通用数据交换平台构建一个基于SOA架构的全国矿产资源数据交换系统。实现国家级系 统和各省级系统的纵向数据交互,实现国家级系统与矿山工程管理子系统、矿山动态监测子 系统、矿山动态模拟系统等3个系统的横向数据交互。

数据交换服务包括数据交换标准的定义、数据映射管理、数据交换设置等功能。交换标准是 数据交换平台的基础, 描述国家级、省级系统之间以及国家级系统、矿山工程管理系统、矿 山动态监测系统、矿山动态模拟系统之间数据交换的格式。数据接收服务是数据交换的核心 功能, 它以数据交换标准为基础完成数据交换并形成日志。
3.2 数据交互的实现

①定义数据交换标准、数据映射关系、服务映射关系、数据交换设置、发布交换标准。②将 系统(省级系统、矿山工程管理系统、矿山动态监测系统、矿山动态模拟系统)中待交换的数 据进行“打包”处理,转化为XML格式并添加控制信息,然后发送到数据交换平台。③数据 交互平台将接收的数据放入到消息队列中,按接收先后顺序逐个处理。④在对数据进行处理 时,首先分析数据的控制信息,通过服务映射关系找到要调用的服务,再通过数据映射关系 将XML格式数据进行转化,转化后的XML格式数据发送到数据审核分析平台。⑤数据审核分析 平台再将XML格式数据转化存贮,并对数据进行审核,审核通过的数据直接存入国家级数据 库中,审核有问题签发审核意见,返回上报单位进行修改,修改后再进行上报。

该交换和采集系统基于SOA架构来设计及实现。SOA能够在最新的和现有的应用之上创建应用 ;SOA能够使各个系统免予服务实现的改变所带来的影响;SOA能够升级单个子系统而无需重 写整个应用,也无需保留已经不再适用于新需求的现有系统。总而言之,SOA以借助现有的 应用来组合产生新服务的敏捷方式,提供给企业或部门更好的灵活性来构建应用程序和业务 流程。
[参考文献]
[1] (美)比伯斯坦张宁译:面向服务架构(SOA)指南:业务价值、规划及企业路线图 [M].北京:人民邮电出版社,2008.
[2] 凌晓东.SOA综述[J],计算机应用与软件,2007,24(10).
[3] 姜建华,洪年松.基于SOA的企业应用集成技术及应用[J].软件导刊,2008, 7(1).
[4] 丁兆青,董传良.基于SOA的分布式应用集成研究[J].计算机工程,2007,33 (10).

推荐访问:采集系统 交换 SOA