薛 辉,邓 军,叶柏龙,文雄军
(1.湖南涉外经济学院,中国 长沙 410205; 2.湖南科技职业学院,中国 长沙 410004;3.中南大学,中国 长沙 410083;4.湖南创博龙智信息科技股份有限公司,中国 长沙 410205)
目前我国的电子政务信息化建设已经取得了很大的进步,为推动我国数字化政务办公起了重要的作用[1-3],但是随着各单位业务系统的增加,长期以来, 各级政府部门之间的信息化建设大部分是各自为政, 与电子政务的统一性、开放性产生严重冲突, 形成了许多信息孤岛,存在许多大量的重复性的工作,特别是许多公有信息.因此,促进信息资源共享,建立分布式网络下数据交换平台系统是我国近年来电子政务建设的重点任务之一.
本文提出的数据交换平台(data exchange platform,DEP)[4-8]采用分布式网络下数据交换体系架构(PowerDX)进行构思设计.平台利用统一的消息服务来控制数据交换过程中复杂的控制信息交互,利用统一的技术标准和管理机制来解决数据交换过程中各种数据的传输;采用基于面向服务的架构(service-oriented architecture,SOA)设计模式[9-10]、利用可扩展标记语言(extensible markup language,XML)技术[11-12]和消息中间件技术对不同数据库产品实现数据交换,搭建一个分布式数据交换平台,可实现多种异构数据交换.
图1 数据交换体系总体架构
该平台总体设计主要是从电子政务系统层次上来考虑,包括:交换体系、电子政务信息安全基础设施和电子政务网络基础平台组成.其中交换体系由服务模式、PowerDX交换平台、数据信息资源、技术标准和管理机制组成,后两者为政务信息资源的交换与共享提供必要的技术和管理保障.如图1所示.
根据当前电子政务发展趋势将服务模式设计为资源共享、业务协同、公共服务和决策支持;基础数据信息可设计为决策数据、基础数据和交换数据等,详见图中标示;数据交换服务处于两者之间,为了满足不同服务模式的应用,通过调用交换平台提供的交换服务来实现对数据信息资源的访问和操作.
由图1可知,平台的应用主要是为用户提供服务,所以设计在总体架构的顶层,为用户提供四方面的服务.而服务是指一个交换组件的集合,它们向外界提供某个接口,能够完成某种数据交换功能.本文采用基于SOA设计模式,利用XML技术和构件技术搭建一个数据服务平台,如图2所示.
图2 基于SOA服务管理模式设计
根据系统设计需要,将服务分为注册服务、请求服务和服务源3类, 在实现时根据用户实际需要,服务可部署在平台的任何地方,在系统发布时只需要根据各自的服务ID号就可以调用或使用该服务,每个服务的实现可以根据用户的需求采用不同的开发工具和不同的数据库,只要能满足用户的业务需要即可,这样设计可以减少系统的开发和维护成本,从而提高系统的通用性.该模式中的3类服务角色的主要功能是:注册服务角色是负责存储和发现服务,同时也为请求服务和服务源提供服务查找;请求服务角色负责通过注册服务发现一些满足自身需要的可选服务,并为该服务的提供者建立绑定关系,这样就可以调用这个服务了,编码时可以组件的方式实现;服务源角色是负责向注册者发布一个服务和为宿主机提供访问控制.三者之间是彼此双向关联、相互影响的.
经过上文的分析发现,数据交换服务是该平台的核心部件,起到承上启下的作用,所以重点分析数据交换服务平台的实现.平台采用交换中心为支撑,交换适配器采用灵活接入的方式,以适用各种环境下的相关政务业务系统和异构数据库等情况下的数据交换.具体实现分述如下:
数据交换平台从逻辑层次上可设计成交换中心、适配器等两大部分组成.功能上负责数据接收、数据处理、数据传输、管理平台等.如图3所示.
图3 数据交换服务实现逻辑结构
图中适配器主要实现PowerDX与其它平台的数据、应用或流程的访问.通过适配器将需要访问的数据进行适配,通过相应的协议或标准接口将传输的数据以一定的格式传输到整个交换分布体系,它是交换数据接收、发送的入口,也是交换引擎之一.采用多个适配器主要是为了满足多种异构数据源的数据转换,比如针对SOAP、HTTP、SQL、FILE、FTP、MSMQ等可匹配不同的适配器.交换中心负责消息服务、数据处理、工作流和日常平台管理.交换中心和适配器分开部署,采用适配器接入方式,还可以非常灵活地解决在不同交换应用场景下的交换实现.
图4 数据交换处理示意图
数据适配器跟数据源进行数据交换是以元数据为单位,可将元数据以XML消息的形式进行交互,适配器以消息传入或传出给交换中心;采用构件技术可以进行设计和开发,可实现扩展性非常强的交换处理模型基础功能.基础功能包括数据抽取/加载、数据发送/接收、数据传输、数据处理、数据监控等功能.如图4所示.
数据交换平台的部署结构分:交换中心服务器、基础数据库服务器、交换前置机、独立虚拟终端几大部分.如图5所示.
在数据交换平台部署结构中每一部分都有各自的功能.交换中心服务器是数据交换的中心枢纽,负责将用户的业务数据跟基础数据库服务器进行数据交换,许多的业务系统都必须先将数据提交给交换中心,然后由交换中心转存到基础数据库中,同理业务子系统的服务也是通过交换中心共享平台的基础数据.交换前置机是各业务部门或子系统平台进行数据交换的接口.独立虚拟终端是针对没有业务接入的部门子系统而设计的,集中设置一个虚拟工作终端,这样就可以进行数据采集和查询服务等.
图5 平台部署结构图
电子政务系统中数据交换面对的是跨多种平台的复杂应用环境,要涉及多种技术和理论,本文利用基于分布式网络环境下SOA、XML、DotNET和构件技术,实现了数据交换的多种模型,不但充分利用了XML在数据交换中的作用,最主要是采用了SOA的设计模型,充分体现了在跨平台应用中的优势,实现了一个高度自治、安全、便于管理的数据集成应用.虽然本平台提供的服务类型丰富,但是交互越多将可能导致潜在的隐患越多,使系统运行受到影响,这是我们课题组今后需要进一步研究的方面.
参考文献:
[1] 吴 焱,高 栋,吴志刚.政务信息资源目录体系和交换体系标准研究[J].信息技术与标准化, 2005,11(1):19-22.
[2] 赵国俊.电子政务[M].3版.北京:电子工业出版社, 2011:1-10.
[3] 姚云鸿.中外电子政务建设现状及比较研究[J].科技管理研究, 2011,10(1):139-141.
[4] DAVE S, SHREEKANTH M. Simulation data exchange(SDX) implementation and use[C]//Washington, DC, USA: Proceedings of the Winter Simulation Conference, IEEE Computer Society, 2001:1473-1477.
[5] YAIR WISEMAN, KARSTEN SCHWAN, PATRICK WIDENER. Efficient end to end data exchange using configurable compression [C]//Hachioji,Tokyo, Japan: 24th IEEE International Conf on Distributed Computing Systems, IEEE Computer Society, 2004:228-235.
[6] RICARDO J R. Interoperating standards in multiagent agile manufacturing scheduling systems[J]. Int J Comput Appl Technol, 2003,18(1/2/3/4):146-159.
[7] KEZUNOVIC M. Ownership of data and the need for information exchange [C]//Belgrade, Yugoslavia: Balkan Power Conference, 2002.
[8] 朱 夏,王 茜.异构系统间数据交换模型的设计与实现[J].东南大学学报:自然科学版, 2006,36(2):226-231.
[9] 陈志峰,孙 静,周 平.面向服务的体系结构(SOA)标准化动态研究[J].信息技术与标准化, 2006,12(1):39-43.
[10] 于振梅.基于SOA模式的企业架构设计[J].中山大学学报:自然科学版, 2006,26(8):98-100.
[11] 李冠德,陈梦东.一种基于XML的数据交换系统的设计和实现[J].微机发展, 2005,15(12):12-14.
[12] 杨甲森,王 浩.用于数据交换的XML文档和关系数据库转换[J].计算机工程与设计, 2006,27(5):857-859.