刘 振,赵 楠,孙艳超,邹盼盼,陈德军
(1.中国船舶重工集团公司 第七二二研究所, 湖北 武汉 430205;2.武汉理工大学 信息工程学院, 湖北 武汉 430070)
基于Web Services的学术会议异构资源集成方法研究
刘振1,赵楠1,孙艳超1,邹盼盼2,陈德军2
(1.中国船舶重工集团公司 第七二二研究所, 湖北 武汉 430205;2.武汉理工大学 信息工程学院, 湖北 武汉 430070)
提出了一种基于Web Services的学术会议异构资源的集成模型,为学术会议异构资源的采集提供了解决方案,提高了各类学术会议资源的利用率。结果表明,该方法能够有效集成学术会议异构资源,对提高学术会议资源的利用率和传播学术成果具有重要意义。
异构资源集成;Web Services;XML;中间件
20世纪70年代以来,随着中国经济的持续发展和社会的不断进步,科学事业也取得了飞速发展,各种学术会议如雨后春笋般持续增多,对推动我国经济发展和社会进步发挥了重要作用。但各类学术会议的举办相对独立,会议的数据源具有独立性和封闭性,在信息交流和共享方面形成“孤岛效应”。随着信息化技术的不断发展,各类会议之间信息交互的需求也日趋增强,如何快速、便捷地找到并读取所需要的会议信息,并对获取的会议信息资源进行融合,实现信息及时共享成为信息化科技研究的焦点[1]。因此,如何将各类不同的会议数据库纳入学术资源共享平台,使用户能方便、高效地获取会议资源已成为信息化技术亟需解决的问题。
在20世纪70年代中期,一般采用全局模式实现异构数据库的集成。异构数据库实现集成的方案,在其相关技术发展的条件下相继推出,目前主要有以下4种:数据库转换与迁移、中间件模式、联邦数据库系统(federated database system,FDS)和数据仓库。其中,数据库转换与迁移方法虽然简单,但是工作量大、实时性较差;中间件模式使各个异构数据库仍然保持自治性且不需改变自身数据的存储和管理模式;FDS已经运用得比较成熟,但联盟数据库之间存在一定的耦合性,扩展性较差;而数据仓库中的数据随时间迅速增长,需要定时更新数据,实时性较差[2]。因此,中间件技术发展迅速并且应用广泛,如 CORBA、消息中间件、J2EE应用服务器和Web Services等技术。其中,DCOM和CORBA属于传统的端到端的服务器通信协议,不适合在跨平台或者跨Internet的条件下使用;J2EE应用服务器通信两端的Java运行环境是Java RMI实现的基础条件[3];Web Services是一种基于服务的、开放性的和松散耦合的组件集成方法,能够很好地解决在异构环境中资源集成的问题,使不同系统间可以进行无缝通讯和数据共享,从而真正达到“基于Web无缝集成”的目标。与此同时,XML是一种与平台无关的标准化结构性标记语言,其作为一种中介数据格式可实现各种异构数据源的数据集成。Web Services之间、客户端与Web Service之间都可以通过标准化的XML实现信息与数据传递,达到透明访问的目的。Web Services弥补了当前数据集成方案的不足,成为目前实现异构数据共享优先选择和考虑的解决方案。所以,笔者采用Web Services中间件技术实现学术会议异构资源的集成。
1.1Web Services
Web services是一种部署在网络上的组件集成方法,其基本思想是通过基于XML的简单对象访问协议(simple object access protocol,SOAP)进行远程调用,从而实现系统间的无缝通讯和数据共享。Web Services建立在开放的Web标准技术基础之上,通过标准的XML统一封装数据、消息和行为等,是建立能够互操作的分布式应用程序的新平台[4]。
服务提供者、服务注册中心和服务请求者是Web Services体系结构的3个主要部分。3个部分之间通过发布服务、查找服务和绑定服务实现交互操作。
网络环境下主要通过以下3步实现服务访问[5-6]:①服务提供者首先要将服务发布到服务注册中心;②服务请求者通过统一描述和发现机制(universal description discovery and integration, UDDI),在注册中心搜索,从而获取所需服务的网络服务描述语言(web service description language, WSDL)文件;③服务请求者依据WSDL中的服务信息(服务访问路径、传输协议、调用参数和返回结果等)实现与服务提供者绑定在一起,并采用SOAP调用相关的服务,从而实现服务请求者与提供者之间的通信。Web Services体系结构图如图1所示。
图1 Web Services体系结构图
从图1可看出,Web Services体系结构的基础包括SOAP、UDDI和WSDL 3大组件。其中,WSDL用于服务的描述,UDDI用于服务的注册,SOAP用于服务的执行。
1.1.1SOAP
SOAP作为Web Services的核心组件,为其提供了一种基于HTTP的通信协议,并且采用XML标准格式化消息,具有一定的独立性和通用性。 SOAP是将不同组件平台连接起来的一种优选技术,其屏蔽了各种组件平台之间的差异,简洁、高效地实现不同应用的集成。虽然CORBA、COM+和J2EE等都有各自的远程对象调用协议,但可以依托相同的数据映射、编码机制或远程调用机制将不同协议中的数据转换成SOAP,从而实现不同协议间数据的相互调用,为不同系统应用的集成提供了条件。
1.1.2UDDI
UDDI是各种分布式Web Services到服务注册中心进行注册的标准规范,经过注册后的服务才能被查询和调用。UDDI所提供的标准化接口,可以使服务提供者发布服务以供服务请求者查询;也可以使服务提供者查询所需服务的描述信息,实现与服务的动态绑定。在UDDI机制下,Web Services可以做到一次性注册,实现到处访问服务的目的。
1.1.3WSDL
WSDL是一种用来定义SOAP消息及消息间是如何交互的协议。WSDL使用标准的XML来定义Web服务接口规范的格式。服务请求者能够通过WSDL自动产生 Web Services的代理。 WSDL 文件主要通过定义消息、服务操作、端口和绑定等信息来描述Web Services,即一个服务由一组端口定义,然后用一组抽象的操作和消息来定义一组端口。
1.2XML
Web Services平台以XML作为表示数据的基本格式,使得Web Services的服务提供者和服务请求者之间形成一种松耦合的关系,不涉及底层开发语言的差异。XML不但比较容易建立和分析,而且与平台和厂商没有任何关系[7-8]。
XML是一种易扩展、结构化的标准语言,并且数据存储格式良好、易于网络传输,渐渐被用来表示不同的数据及实现数据之间的交换。其拥有 HTML语言不具备的灵活性和伸缩性,使用者完全能够依据不同的需求来定义不同的标记以描述相应的数据,从而使数据表达的内容更加灵活。XML属于元标记语言,凡是符合XML命名规则的名称都可以成为标记,同时XML又属于语义和结构化语言,可以对文档的语义和结构进行描述。XML文档包括一个根元素和若干非根元素,而元素中还可以包含属性。以下为一个相对简易的 XML 文档示例:
从上述示例可知,XML 文档易于理解。此外,XML由于其自描述性、结构性和可扩展性,在异构数据集成中得到广泛的应用,具体描述如下:
(1)XML以一种标准化的语言成为数据传输的中间格式,为各个异构数据源提供了一层理想的封装,即各个异构数据库保持自治性,彼此之间互不影响。
(2)XML的自定义性及结构性使其作为一种标准的数据格式来表示不同类型的数据,从而实现异构数据源的数据转换。
(3)可以充分利用XML解析器(DOM/SAX API)实现异构数据源中数据的高效提取和存储。
使用Web Services技术来实现异构资源数据高效灵活集成的基本思想是:通过Web Services包装器实现对各个数据源的封装,并生成各自的Web Services发布到服务注册中心;在服务请求者调用服务后,相应的Web Services执行服务,并将服务结果通过SOAP协议发送到中间件层。
Web Services中间件层实现了平台数据库与各个会议数据库之间的低耦合性。在UDDI上注册异构资源共享服务,将数据从各会议数据库中提取出来并传输至总平台,实现了各异构数据库和平台总数据库间的通信;而在数据传输过程中采用标准的XML作为统一的数据模式,实现了各异构数据模式与平台数据模式的相互转换,保证了应用服务器对各异构数据库的透明访问[9-10]。基于Web Services的学术会议异构资源集成模型如图2所示。
图2 基于Web Services的学术会议异构资源集成模型
2.1数据字典
在上述Web Services中间件工作过程中,需要将位于不同数据源的不同数据格式的数据通过XML进行转化、传输、存储至平台总数据库中,从物理上实现资源的有机集中,从而实现资源采集。这就需要定义一个局部数据源提供的资源与总平台所需的资源映射关系,即平台的统一全局标准与各个会议系统的局部标准之间的映射关系。这个全局标准需要由总平台根据各个会议系统提交的可共享资源信息来定义,从而建立数据字典。其中涉及的3种数据模式为:①全局数据模式。由平台管理员定义的针对不同类型资源的数据模式,即平台上所需的资源数据;②局部数据模式。各会议数据库系统对于同一个资源数据(如会议文章题目)的具体定义不一,因此,各个会议系统的管理员需在平台上根据平台所提供的全局数据模式填写自身系统中对应的数据字段,即为局部数据模式,而这两种数据模式之间的映射关系被存储下来,生成数据字典;③XML数据模式。XML的标准性、结构性使其可以作为一种中介数据模式,根据数据字典实现全局数据模式与中介数据模式的相互转换。
平台针对各个不同数据库表生成对应的配置文件,数据库表的配置信息包括数据库所在服务器域名、数据库类型、数据库名称、表名称、字段名称等,具体的映射信息(以会议文献信息配置文件格式为例)如下:
其中,标签名为平台管理员提供的模板数据库表字段(全局数据模式),标签中的内容为各个会议系统管理员配置自身数据库中的相应表字段(局部数据模式),从而建立上述数据映射关系形成数据字典。 通过数据字典使平台上的用户可在访问异构数据源时如同访问本地数据库,从而很好地封装了各个异构数据源中数据的差异。
2.2模式解析
在应用层提交请求时,需要将应用层的全局请求转化成针对具体会议系统的局部请求,此时就需要根据之前建立的数据字典,进行模式解析,即将请求中的全局数据模式解析为对应会议系统的局部数据模式,从而将总平台的SQL请求解析为针对不同数据库的独立SQL语句,以此来屏蔽各个会议系统数据库表的差异。
2.3Web Services包装器
Web Services包装器的作用主要是屏蔽各个会议系统数据库的差异。主要包括3部分功能:①发布Web服务。填写会议数据库系统相关信息,添加到服务注册中心,并发布该会议系统的Web Services,以实现与相应数据库的连接;②处理调用服务请求。接收到服务请求者针对该会议系统的SQL请求后,进行服务绑定,从相应的数据库中获取查询结果;③模式装换。将各个数据库的局部数据模式转换为统一的XML数据模式,然后返回给服务请求者。
为了实现不同地点的不同数据库的数据集成,笔者将Web Services包装器开发成插件的形式,并封装了针对不同数据库的驱动文件。各会议资源提供者只需下载插件,安装在数据库所在服务器上,然后根据安装时填写的数据库信息加载相应的驱动文件,即可在共享平台进行数据查询服务请求时,连接相应的数据库。
Web Services包装器的具体工作过程为:首先各个会议系统的管理员在平台上提交可以共享的数据信息后,在平台上下载Web Services客户端,装在各自会议系统的服务器上,运行后填写服务器的相关信息,就自动发布了该会议的Web Services;其次服务请求者在服务注册中心获取到该Web Services信息后进行查询请求,Web Services包装器处理服务请求获取查询结果数据;最后将查询到的局部数据模式转换成统一的XML数据模式返回给服务请求者,即可进行相关共享资源的传输,从而实现异构资源的集成。
通过异构资源集成模型可知,基于Web Services中间件实现异构资源集成的详细过程如图3所示。
图3 异构资源集成过程示意图
异构会议资源集成主要是通过各个异构会议系统管理员在线进行数据配置,并下载客户端安装在各自的数据库服务器上,实现相关会议资源的整合集成。笔者以文献资源集成为例介绍会议资源集成功能的实现过程。
首先会议资源提供者在平台上注册为会员后登录进入系统,然后根据平台定义的全局数据模式配置自身系统的数据信息,主要需填写数据库域名、集成数据库表名、相应的数据字段等信息,异构数据映射信息界面,如图4所示。
图4 配置异构数据映射信息界面
用户添加集成配置信息后,需在平台上下载客户端(Web Services包装器),配置数据库所在服务器域名、数据库驱动文件类型及连接数据库的相关信息。然后用户在平台上选中已添加的配置信息,点击“确定”按钮,即根据配置信息从异构数据库中提取数据信息传输到总平台,实现异构数据集成。点击资源配置信息列表的最后一列“资源展示”,即可看到当前配置信息获取的资源,如图5所示。
图5 根据集成配置信息获取的资源列表
笔者针对学术会议资源分散、利用率不高等问题,提出了一种基于Web Services的会议异构资源的集成模型。Web Services实现了各异构数据库和平台总数据库间的通信;而在数据传输过
程中采用标准的XML作为统一数据模式,实现了各异构数据的相互转换,从而保证了应用服务器对各异构数据库的透明访问。采用基于 XML 和 Web Services的中间件设计思想,保证了其通用性和可重复使用性。
[1]锁志海,张榕娟,李杰,等.基于信息技术的高校学术会议资源整合研究[J].科研管理,2007,28(4):51-54.
[2]马利成.基于XML的异构数据集成系统的研究与实现[D].上海:上海交通大学,2007.
[3]陈光明.基于Web Services的安全中间件的设计与实现[D].南京:南京理工大学,2007.
[4]帕派佐格罗.Web服务:原理和技术[M].北京:机械工业出版社,2009:12-16.
[5]ZHU Y Q, YU H, JIANG W F, et al.Research on web service-oriented data integration in the distributed system[C]∥2011 IEEE 2nd International Conference on Software Engineering and Service Science.[S.l.]: IEEE, 2011:568-571.
[6]田博涵.基于Web Services的网络安全资源共享平台研究与实现[D].北京:北京邮电大学,2009.
[7]张富强.基于XML的异构数据库中间件的设计与实现[D].西安:西安电子科技大学,2012.
[8]柏永斌,许利亚,冯震宇,等.基于XML和Web Services的异构数据整合技术应用研究[J].电脑知识与技术,2009,5(8):1796-1797.
[9]MENG J, MEI S J, YAN Z.Restful web services: a solution for distributed data integration[C]∥2009 International Conference on Computational Intelligence and Software Engineering.[S.l.]:IEEE, 2009:1-4.
[10]李国栋,李樨,柳长安.基于Web Services异构资源汇集与共享系统[J].计算机技术与发展,2008,18(12):137-143.
Research on Academic Conferences Heterogeneous Resources Integration Based on Web Services
LIU Zhen, ZHAO Nan, SUN Yanchao, ZOU Panpan, CHEN Dejun
An integration model of academic conferences heterogeneous resources based on Web Services is proposed.It provides a solution for collecting heterogeneous resources of academic conferences and increases the resource utilization of all kinds of academic conferences.The results show that this method is effective in integrating academic conferences heterogeneous resources and it is of great significance to improve the resource utilization of academic conferences and disseminate academic achievements.
heterogeneous resources integration; web services; XML; middleware
LIU Zhen:Researcher; China Shipbuilding Industry Corporation.No.722 Research Institute, Wuhan, 430205, China.
2095-3852(2016)04-0498-05
A
2016-03-15.
刘振(1988-),男,安徽阜阳人,中国船舶重工集团公司第七二二研究所研究员.
TP391
10.3963/j.issn.2095-3852.2016.04.022