论文部分内容阅读
[摘 要] 本文针对网络信息资源集成应用的需要,通过探讨Web Services技术体系,构建了基于Web Services的网络信息资源集成框架,并结合国内外有关研究和应用进展,进行了案例的分析和研究。
[关键词] 网络信息资源;集成;Web Services;XML
针对当前跨平台、跨数据库的网络信息资源集成所存在的问题,本文通过介绍Web Services技术的体系结构和特点,提出了一种基于Web Services进行跨平台、跨数据库的网络数据集成的解决方案,利用WebServices松散耦合等特性,把现存的各种网络信息资源集成整合起来,提取出有用信息来满足各种信息用户的信息需求,从而在不改变现有应用系统的基础上实现网络信息资源共享。
基于XML标准的Web Services技术的发展促使Web Services应用不断成熟和完善。Web Services的主要目标就是在现有的各种异构平台的基础上构筑一个通用的与平台、语言无关的技术层,各种不同平台之上的应用依靠这个技术层来实施彼此的连接和集成。
1 网络信息资源
网络信息资源(Network lnformation Resource)是指以电子数据的形式将文字、图像、声音、动画等多种形式的信息存放在光磁等非印刷质的载体中,并通过网络通信、计算机或终端等方式再现出来的信息资源”,。网络信息资源从字面上可以理解为“通过计算机网络可以利用的各种信息资源的总和”;从目的上看是“为了提高信息系统效率从而实现资源共享而采用计算机网络整理、传递、获取的各种信息”;在范围上看不仅包括因特网上的各种资源,也包括各种局域网、城域网和广域网上的信息资源。与传统信息资源相比,网络信息资源在数量、结构、分布和传播范围类型、载体形态、内涵、控制机制、传递手段等方面存在着显著的差异,呈现出许多新的特点,这些特点赋予网络环境下信息资源集成许多新的内涵。
所谓集成,是指某一系统或某一系统的核心把若干部分、要素联接在一起,使之成为一个统一整体的过程。从管理的角度来说,集成是一种创造性的融合过程。只有当构成一个系统的要素经过主动的优化、选择搭配,相互之间以最合理的结构形式结合在一起,形成一个由适宜要素组成的、优势互补的有机体,才能被称为集成。而信息资源的集成,是指以信息为对象、信息资源为本体、服务为动力、网络技术为手段,把信息资源诸要素有机地链接成一个整体的动态过程。
据统计,截至2001年4月30日,中国互联网络域名总数约为69.2万个,网站总数约为23.8万个,网页总数约1.6亿个,在线数据库达到约4.6万个。然而,网络的迅速发展并不代表着网络信息资源的利用率越来越高,网络信息资源的无限、无序和优劣混杂以及存储这些资源的系统和数据库的异构性已成为人们有效利用网络信息资源的主要障碍。由此可见,如何从浩如烟海的网络资源以及不同应用系统和异构数据库中筛选出高质量信息显得日益重要,它直接影响图书馆及其信息用户对网络信息资源的开发和利用。整个人类世界已经或正在通过网络建设成一个前所未有的超级数据库。今后,在网络环境下,越来越多的人将面临如何从网络分布在异地的大量异构系统和数据库中选择有用信息的问题。
由于网络信息资源存在地域分布不均衡,大量重置和浪费现象,且基础设施软、硬件平台不统一,造成资源不能共享,并且网络信息资源关联度差,信息资源库、应用系统异构程度高,造成大量“信息孤岛”。由此不难看出,传统的建设模式带来的结果是:一方面解决问题,另一方面制造信息孤岛;一方面各种信息用户苦于基础数据库没有信息、没有信息渠道和更新渠道,而另一方面大量已掌握的第一手、真实的数据又没有被充分有效地利用。这种状况不仅使人们投资建设的许多信息采集、通信和应用系统没有充分发挥作用,也制约了应用的进一步发展。
网络信息资源集成整合是突破现状的惟一途径。怎样才能突破目前的局面,实现网络信息资源建设的可持续发展呢?若将现有系统推倒重来,建设综合的新系统,是不可能也是不现实的。现阶段要花钱少、见效快地大幅度提高行业信息化、信息资源建设质量和信息技术应用水平的惟一途径就是整合、集成现有网络信息资源。网络信息资源集成主要涉及两种方法:一种是对现有各种网络信息资源的集中,就是把现有网络信息资源集中起来,形成数据仓库,通过数据的抽取、转换、清理和装载,将数据从一个系统传输到另一个系统,同时对其进行整理和修改,从而符合数据仓库的需求,达到数据集成的目的;另一种是数据交换,根据信息用户的需求,不是形成数据仓库,而是在保存现有数据资源库独立性的基础上把现有网络资源通过统一的接口抽取整合起来,利用WebServices技术进行数据集成和数据交换。而本文则重点针对第二种方法进行论述,给出网络信息资源集成解决方案。
2 Web ServiVices技术
Web Service可以被认为是一种部署在Web上的对象(Web Object),因此,具有对象技术所承诺的所有优点。同时,Web Services的基石是以XML为主的、开放的Web规范技术,因此,具有比任何现有对象技术更好的开放性。
2.1 Web Services体系架构
WebServices体系结构基于3种角色(服务提供者、服务注册中心和服务请求者)之间的交互。图1显示了这些操作及提供这些操作的组件及其之间的交互。
(1)服务提供者。从企业的角度看,这是服务的所从体系结构的角度看,这是托管访问服务的平
(2)服务请求者。从体系结构的角度看,这是寻找并调用服务,或启动与服务交互的应用程序。服务请求者角色可以由浏览器来担当,由人或无用户界面的程序(例如另外一个Web服务)来控制。
(3)服务注册中心。这是可搜索的服务描述注册中心,服务提供者在此发布他们的服务描述。在静态绑定开发或动态绑定执行期间,服务请求者查找服务并获得服务的绑定信息(在服务描述中)。对于静态绑定的服务请求者,服务注册中心是体系结构中的可选角色,因为服务提供者可以把描述直接发送给服务请求者。
2.2 Web Services协议
Web Services区别于其他类似计算模型的部分原因在于Web Services使用了XML和基于XML的标准。最常见的是SOAP、WSDL、UDDI。这些技术使应用程序之间的通信能够以一种独立于特定编程语言、操作系统和硬件平台的方式进行。笔者在这里仅对这些标准和协议作简要的介绍,详细阐述可以参阅文献柴晓璐等编著的《Web Services技术、架构和应用》一书(见图2)。
(1)XML规范。XML(可扩展标 记语言)由标准通用标记语言(SGML)发展而来,现已成为一种人们广泛接受的用于描述数据和创建标记语言的标准。同许多由专用走向标准的技术不同,XML是由W3C所定义的一种开放的、标准的技术。
![](https://www.soolun.com/img/pic.php?url=http://img.resource.qikan.cn/qkimages/xxdb/xxdb200609/xxdb20060920-1-l.jpg)
(2)SOAP协议。SOAP(简单对象访问协议)是一种基于XML的、不依赖传输协议的、用于在应用程序之间以对象的形式交换数据的表示层通信协议,是Web Services的核心,可以看成是用户端与服务器端之间进行沟通的特殊语言。
(3)WSDL协议。Web Services的另外一个重要标准是WSDL(Web服务描述语言)。其被用来描述WebServices的相关信息,它把网络服务定义成一个能交换消息的通信端点集。
(4)UDDI协议。UDDI(统一描述、发现和集成协议)是一套基于Web的、分布式的、为Web Services提供的信息注册中心的实现标准规范,是一个跨产业、跨平台的开放性架构,可以帮助Web Services开发商在Intemet上公布自己推出的Web Services,同时也可以被企业发现。
3 基于Web Services的网络信息资源集成框架
3.1 Web Services集成的特点
Web services基于Internet的标准协议,其接口仅定义了能够被收发的信息,没有系统平台和编程语言专用格式的要求,非常适合于动态的Web应用系统集成,它有如下特点:
(1)良好的封装性和松散耦合性。Web Services是部署在Web上的一种可调用组件对象。调用者仅能看到该Web Services的功能列表,而无须了解其功能实现。
(2)跨平台的应用集成。Web Services以XML语言作为服务界面和协议描述的规范,完全屏蔽了不同软件系统平台的差异,无论什么平台下的程序都可以通过标准的协议进行互操作。
(3)集成的动态性和自主性。这些被封装为服务的系统可以动态地根据UDDI的信息进行匹配和连接相关的服务,被调用的服务又可以自主地再调用其他的注册服务,由此动态地形成柔性的应用服务链。
3.2 基于Web Services构建网络信息资源集成框架的可行性分析
(1)从应用角度来讲,由于Web Services所采用的技术是完全基于现有标准的,并且有的已发展为事实上的行业规范,这会增加信息用户的认同感,同时,各种Web Services技术平台,如Microsoft.Net、SunONE的出现,也使Web Services的开发、部署变得十分容易。这些因素都有利于Web Services被信息用户所广泛接受,并在实际中使用。另外,在进行Web Services开发时,用户不必推翻自己原有的底层架构,无须担心由此带来的投资风险和开发费用问题。
(2)从技术角度来讲,基于XML/SOAP的Web Services可以满足不同应用系统集成的要求。XML提供了异构系统之间相互通信所需要的统一的数据格式,可以解决不同应用系统由于信息格式和数据处理方式不同而造成的交互困难问题。SOAP基于XML和HTTP,使异构系统间的相互通信成为可能,同时还可以消除防火墙的阻隔,使处于不同防火墙内的应用系统可以通过Internet相互交换数据和文档。
(3)从发展前景来看,Web Services作为一种新兴技术,一开始便显露出旺盛的生命力。Microsoft、IBM等各大公司积极参与相应技术的研究和规范的制定,同时也投入巨大的力量在其产品中增加对Web Services的支持,这将使得Web Services的应用成为一种趋势,WebServices的发展将具有广阔的市场前景。
由此可见,与传统方式相比,Web Services的设计和应用更加简单,此外,由于Web Services基于XML等开放协议,因此它能够被广泛接受并向前兼容,潜在地消除了日后为支持新技术而需要进行二度投资的风险。再者,Web Services的服务接口可以动态改变(当发生这种改变时,Web Services使用者可以通过到UDDI自动重新查找、绑定而适应这种改变),因此可以实现一个动态的集成,这在不断扩大/变动用户需求和商业应用的情况下,对实现其应用集成也有很大的好处。所以,针对网络信息资源在网络环境下的特点,利用Web Services技术进行集成是可行的。
3.3 基于Web Services的网络信息资源集成框架
网络信息资源的分布是不对称、不均衡的。网络信息资源的集成是信息资源的有机组织。网络信息资源集成是由多种网络数据库组成的标准、有序、完整的信息体系,能任意拆分、组合、编辑、检索、输出信息产品,能揭示信息表征、内容和关系,满足用户的各种需求。数据库集成管理形态包括对象数据库、分布式数据库、工程数据库、演绎数据库、知识库、模糊数据库、时态数据库、统计数据库、空间数据库、科学数据库、并行数据库、多媒体数据库、文献数据库、全文数据库、参考数据库、源数据库、混合数据库和虚拟数据库等。因此,我们在这里谈的集成主要是指基于异构数据库的数据集成。我们知道在网络中存在着大量的应用系统和资源数据库,但是它们大都是彼此异构且独立的。从而,如何进行异构数据库的数据集成是本文关注的焦点。
(1)传统解决方案
一般地,应用系统的开发大多采用“独立的解决方案”,在特定的操作系统平台上,在特定的集成开发环境下,基于特定的数据表达格式,进行特定应用软件系统的开发,很少考虑应用的可集成性、可重用性、可定制性和可移植性,造成了众多软硬件平台及各类应用系统并存的局面,结果往往形成了众多的数据孤岛和小规模的紧密集成””。人们最开始是以编写代码的方式实现异构系统和数据库之间的对接和通信,后来产生了组件对象技术,如微软的DCOM、SUN的EJB、OMG的CORBA等。这些技术的出现在一定程度上解决了问题,但它们仍然不够便利,而且也不能提供一个整体的构架,使所有的网络数据资源真正无缝地集成在一起。
(2)Web Services应用解决方案
1)网络信息资源集成主要面临的问题,
——无序性:网络信息资源组织和发布没有使用统一的标准与规范,造成网络信息资源之间关联度差,从而产生了越来越多的低重用性网络资源。
——异构性:网络信息资源存在形式各异,分布环境千差万别。目前的网络信息资源以文本、多媒体、网站等多和形式存在,分布环境由于操作系统、数据库类型、网络条件的不同而多种多样。
——封闭性:现有各种网络信息资源各自独立,缺乏有效的互连互通机制,导致其互操作性差,协作困难,很难产生各种资源的聚合附加值。 正因为存在如此问题,所以如何把各种网络信息资源集成起来,更好地为各种网络信息用户提供信息服务,是我们利用Web Services集成网络信息资源的目的所在。我们使用Web Services集成网络信息资源,并不是要完全地替代传统的应用集成模型。实际上,我们看到在同构的系统内部,传统的分布式技术如DCOM或者CORBA等,能够很好地工作,Web Services所需要做的,是支撑现存的下层机构,把不同的异构系统连接起来成为一个有机的整体。
2)提出方案框架(见图3)
——建立一个中心交互界面,如数据库,在其服务站点上提供Web Services接口,用来实现中心数据库与异构网络资源服务器的数据库之间的通信功能。
——设置一个基于Web Services实例实现的服务,通过适配器在各异构数据库所在局域网的对外服务器上实现代理数据接入网关对异构应用系统的数据库进行访问,以解决无法访问数据库的问题。
——实现与数据库无关的数据描述。充分利用XML语言的描述能力描述各种SQL语句及数据集。
3)应用案例
下面将以物理上分布分散、使用不同语言开发、不同操作系统平台和数据库的应用系统为案例,用Web Services实现其基于Internet的整合集成。
![](https://www.soolun.com/img/pic.php?url=http://img.resource.qikan.cn/qkimages/xxdb/xxdb200609/xxdb20060920-2-l.jpg)
——需求分析。由于各种系统的开发语言、平台和数据库都存在异构性,决定选取基于Web Services的整合集成框架。
——功能分解。详细分解各系统提供的功能和服务,并编写对应的接口,封装成Web Services实例。
——步骤实施。利用SOAP和HTTP协议通过Internet发布封装的Web Services,用WSDL描述各WebServices的功能和访问接口等信息,在UDDI注册中心进行注册;客户端通过自己的用户界面,进行服务请求。用WSDL描述需要访问的服务,通过Internet用SOAP消息向注册中心发出查询请求;注册中心通过查找将对应服务的WSDL描述返回客户;客户用得到的WSDL描述生成SOAP请求消息,通过Internet绑定服务提供者。SOAP请求被作为一条HTTPPOST请求发出,交由Web服务器处理。Web服务器分析HTFP头信息并找到SOAP路由器的名称,然后将请求消息传递到指定的SOAP路由器。SOAP路由器分析HTTP头找出某个Web Services适配器的位置,将该请求传送到所请求的适配器;适配器激活应用。拥有单一或多种数据库的应用系统处理请求,并将结果返回各适配器;适配器将得到的结果打包成SOAP消息,返回给SOAP路由器。SOAP消息再返回到Web服务器。
——最终结果。客户最终得到包含执行结果的SOAP消息。
4 结 语
正如前文所介绍的那样,Web Services的提出就是为了解决异构的数据集成问题,所有上面所提到的一些异构性都可以通过Web Services技术进行整合,对服务进行定义,从而隐藏旧的应用接口的一些复杂性,异构系统间的交互(如数据交换、数据挖掘等)难题可以得到很好的解决。基于Web Services技术的网络信息资源集成方案,可以方便地实现已有系统、新开发的Web Services应用等各种系统的数据集成。只有对网络信息资源进行有效集成,才能使网络环境下的信息资源变为有序的信息空间,实现信息资源效用的最大优化,使网络信息资源发挥更大的效益,更好地为社会发展服务。
[关键词] 网络信息资源;集成;Web Services;XML
针对当前跨平台、跨数据库的网络信息资源集成所存在的问题,本文通过介绍Web Services技术的体系结构和特点,提出了一种基于Web Services进行跨平台、跨数据库的网络数据集成的解决方案,利用WebServices松散耦合等特性,把现存的各种网络信息资源集成整合起来,提取出有用信息来满足各种信息用户的信息需求,从而在不改变现有应用系统的基础上实现网络信息资源共享。
基于XML标准的Web Services技术的发展促使Web Services应用不断成熟和完善。Web Services的主要目标就是在现有的各种异构平台的基础上构筑一个通用的与平台、语言无关的技术层,各种不同平台之上的应用依靠这个技术层来实施彼此的连接和集成。
1 网络信息资源
网络信息资源(Network lnformation Resource)是指以电子数据的形式将文字、图像、声音、动画等多种形式的信息存放在光磁等非印刷质的载体中,并通过网络通信、计算机或终端等方式再现出来的信息资源”,。网络信息资源从字面上可以理解为“通过计算机网络可以利用的各种信息资源的总和”;从目的上看是“为了提高信息系统效率从而实现资源共享而采用计算机网络整理、传递、获取的各种信息”;在范围上看不仅包括因特网上的各种资源,也包括各种局域网、城域网和广域网上的信息资源。与传统信息资源相比,网络信息资源在数量、结构、分布和传播范围类型、载体形态、内涵、控制机制、传递手段等方面存在着显著的差异,呈现出许多新的特点,这些特点赋予网络环境下信息资源集成许多新的内涵。
所谓集成,是指某一系统或某一系统的核心把若干部分、要素联接在一起,使之成为一个统一整体的过程。从管理的角度来说,集成是一种创造性的融合过程。只有当构成一个系统的要素经过主动的优化、选择搭配,相互之间以最合理的结构形式结合在一起,形成一个由适宜要素组成的、优势互补的有机体,才能被称为集成。而信息资源的集成,是指以信息为对象、信息资源为本体、服务为动力、网络技术为手段,把信息资源诸要素有机地链接成一个整体的动态过程。
据统计,截至2001年4月30日,中国互联网络域名总数约为69.2万个,网站总数约为23.8万个,网页总数约1.6亿个,在线数据库达到约4.6万个。然而,网络的迅速发展并不代表着网络信息资源的利用率越来越高,网络信息资源的无限、无序和优劣混杂以及存储这些资源的系统和数据库的异构性已成为人们有效利用网络信息资源的主要障碍。由此可见,如何从浩如烟海的网络资源以及不同应用系统和异构数据库中筛选出高质量信息显得日益重要,它直接影响图书馆及其信息用户对网络信息资源的开发和利用。整个人类世界已经或正在通过网络建设成一个前所未有的超级数据库。今后,在网络环境下,越来越多的人将面临如何从网络分布在异地的大量异构系统和数据库中选择有用信息的问题。
由于网络信息资源存在地域分布不均衡,大量重置和浪费现象,且基础设施软、硬件平台不统一,造成资源不能共享,并且网络信息资源关联度差,信息资源库、应用系统异构程度高,造成大量“信息孤岛”。由此不难看出,传统的建设模式带来的结果是:一方面解决问题,另一方面制造信息孤岛;一方面各种信息用户苦于基础数据库没有信息、没有信息渠道和更新渠道,而另一方面大量已掌握的第一手、真实的数据又没有被充分有效地利用。这种状况不仅使人们投资建设的许多信息采集、通信和应用系统没有充分发挥作用,也制约了应用的进一步发展。
网络信息资源集成整合是突破现状的惟一途径。怎样才能突破目前的局面,实现网络信息资源建设的可持续发展呢?若将现有系统推倒重来,建设综合的新系统,是不可能也是不现实的。现阶段要花钱少、见效快地大幅度提高行业信息化、信息资源建设质量和信息技术应用水平的惟一途径就是整合、集成现有网络信息资源。网络信息资源集成主要涉及两种方法:一种是对现有各种网络信息资源的集中,就是把现有网络信息资源集中起来,形成数据仓库,通过数据的抽取、转换、清理和装载,将数据从一个系统传输到另一个系统,同时对其进行整理和修改,从而符合数据仓库的需求,达到数据集成的目的;另一种是数据交换,根据信息用户的需求,不是形成数据仓库,而是在保存现有数据资源库独立性的基础上把现有网络资源通过统一的接口抽取整合起来,利用WebServices技术进行数据集成和数据交换。而本文则重点针对第二种方法进行论述,给出网络信息资源集成解决方案。
2 Web ServiVices技术
Web Service可以被认为是一种部署在Web上的对象(Web Object),因此,具有对象技术所承诺的所有优点。同时,Web Services的基石是以XML为主的、开放的Web规范技术,因此,具有比任何现有对象技术更好的开放性。
2.1 Web Services体系架构
WebServices体系结构基于3种角色(服务提供者、服务注册中心和服务请求者)之间的交互。图1显示了这些操作及提供这些操作的组件及其之间的交互。
(1)服务提供者。从企业的角度看,这是服务的所从体系结构的角度看,这是托管访问服务的平
(2)服务请求者。从体系结构的角度看,这是寻找并调用服务,或启动与服务交互的应用程序。服务请求者角色可以由浏览器来担当,由人或无用户界面的程序(例如另外一个Web服务)来控制。
(3)服务注册中心。这是可搜索的服务描述注册中心,服务提供者在此发布他们的服务描述。在静态绑定开发或动态绑定执行期间,服务请求者查找服务并获得服务的绑定信息(在服务描述中)。对于静态绑定的服务请求者,服务注册中心是体系结构中的可选角色,因为服务提供者可以把描述直接发送给服务请求者。
2.2 Web Services协议
Web Services区别于其他类似计算模型的部分原因在于Web Services使用了XML和基于XML的标准。最常见的是SOAP、WSDL、UDDI。这些技术使应用程序之间的通信能够以一种独立于特定编程语言、操作系统和硬件平台的方式进行。笔者在这里仅对这些标准和协议作简要的介绍,详细阐述可以参阅文献柴晓璐等编著的《Web Services技术、架构和应用》一书(见图2)。
(1)XML规范。XML(可扩展标 记语言)由标准通用标记语言(SGML)发展而来,现已成为一种人们广泛接受的用于描述数据和创建标记语言的标准。同许多由专用走向标准的技术不同,XML是由W3C所定义的一种开放的、标准的技术。
![](https://www.soolun.com/img/pic.php?url=http://img.resource.qikan.cn/qkimages/xxdb/xxdb200609/xxdb20060920-1-l.jpg)
(2)SOAP协议。SOAP(简单对象访问协议)是一种基于XML的、不依赖传输协议的、用于在应用程序之间以对象的形式交换数据的表示层通信协议,是Web Services的核心,可以看成是用户端与服务器端之间进行沟通的特殊语言。
(3)WSDL协议。Web Services的另外一个重要标准是WSDL(Web服务描述语言)。其被用来描述WebServices的相关信息,它把网络服务定义成一个能交换消息的通信端点集。
(4)UDDI协议。UDDI(统一描述、发现和集成协议)是一套基于Web的、分布式的、为Web Services提供的信息注册中心的实现标准规范,是一个跨产业、跨平台的开放性架构,可以帮助Web Services开发商在Intemet上公布自己推出的Web Services,同时也可以被企业发现。
3 基于Web Services的网络信息资源集成框架
3.1 Web Services集成的特点
Web services基于Internet的标准协议,其接口仅定义了能够被收发的信息,没有系统平台和编程语言专用格式的要求,非常适合于动态的Web应用系统集成,它有如下特点:
(1)良好的封装性和松散耦合性。Web Services是部署在Web上的一种可调用组件对象。调用者仅能看到该Web Services的功能列表,而无须了解其功能实现。
(2)跨平台的应用集成。Web Services以XML语言作为服务界面和协议描述的规范,完全屏蔽了不同软件系统平台的差异,无论什么平台下的程序都可以通过标准的协议进行互操作。
(3)集成的动态性和自主性。这些被封装为服务的系统可以动态地根据UDDI的信息进行匹配和连接相关的服务,被调用的服务又可以自主地再调用其他的注册服务,由此动态地形成柔性的应用服务链。
3.2 基于Web Services构建网络信息资源集成框架的可行性分析
(1)从应用角度来讲,由于Web Services所采用的技术是完全基于现有标准的,并且有的已发展为事实上的行业规范,这会增加信息用户的认同感,同时,各种Web Services技术平台,如Microsoft.Net、SunONE的出现,也使Web Services的开发、部署变得十分容易。这些因素都有利于Web Services被信息用户所广泛接受,并在实际中使用。另外,在进行Web Services开发时,用户不必推翻自己原有的底层架构,无须担心由此带来的投资风险和开发费用问题。
(2)从技术角度来讲,基于XML/SOAP的Web Services可以满足不同应用系统集成的要求。XML提供了异构系统之间相互通信所需要的统一的数据格式,可以解决不同应用系统由于信息格式和数据处理方式不同而造成的交互困难问题。SOAP基于XML和HTTP,使异构系统间的相互通信成为可能,同时还可以消除防火墙的阻隔,使处于不同防火墙内的应用系统可以通过Internet相互交换数据和文档。
(3)从发展前景来看,Web Services作为一种新兴技术,一开始便显露出旺盛的生命力。Microsoft、IBM等各大公司积极参与相应技术的研究和规范的制定,同时也投入巨大的力量在其产品中增加对Web Services的支持,这将使得Web Services的应用成为一种趋势,WebServices的发展将具有广阔的市场前景。
由此可见,与传统方式相比,Web Services的设计和应用更加简单,此外,由于Web Services基于XML等开放协议,因此它能够被广泛接受并向前兼容,潜在地消除了日后为支持新技术而需要进行二度投资的风险。再者,Web Services的服务接口可以动态改变(当发生这种改变时,Web Services使用者可以通过到UDDI自动重新查找、绑定而适应这种改变),因此可以实现一个动态的集成,这在不断扩大/变动用户需求和商业应用的情况下,对实现其应用集成也有很大的好处。所以,针对网络信息资源在网络环境下的特点,利用Web Services技术进行集成是可行的。
3.3 基于Web Services的网络信息资源集成框架
网络信息资源的分布是不对称、不均衡的。网络信息资源的集成是信息资源的有机组织。网络信息资源集成是由多种网络数据库组成的标准、有序、完整的信息体系,能任意拆分、组合、编辑、检索、输出信息产品,能揭示信息表征、内容和关系,满足用户的各种需求。数据库集成管理形态包括对象数据库、分布式数据库、工程数据库、演绎数据库、知识库、模糊数据库、时态数据库、统计数据库、空间数据库、科学数据库、并行数据库、多媒体数据库、文献数据库、全文数据库、参考数据库、源数据库、混合数据库和虚拟数据库等。因此,我们在这里谈的集成主要是指基于异构数据库的数据集成。我们知道在网络中存在着大量的应用系统和资源数据库,但是它们大都是彼此异构且独立的。从而,如何进行异构数据库的数据集成是本文关注的焦点。
(1)传统解决方案
一般地,应用系统的开发大多采用“独立的解决方案”,在特定的操作系统平台上,在特定的集成开发环境下,基于特定的数据表达格式,进行特定应用软件系统的开发,很少考虑应用的可集成性、可重用性、可定制性和可移植性,造成了众多软硬件平台及各类应用系统并存的局面,结果往往形成了众多的数据孤岛和小规模的紧密集成””。人们最开始是以编写代码的方式实现异构系统和数据库之间的对接和通信,后来产生了组件对象技术,如微软的DCOM、SUN的EJB、OMG的CORBA等。这些技术的出现在一定程度上解决了问题,但它们仍然不够便利,而且也不能提供一个整体的构架,使所有的网络数据资源真正无缝地集成在一起。
(2)Web Services应用解决方案
1)网络信息资源集成主要面临的问题,
——无序性:网络信息资源组织和发布没有使用统一的标准与规范,造成网络信息资源之间关联度差,从而产生了越来越多的低重用性网络资源。
——异构性:网络信息资源存在形式各异,分布环境千差万别。目前的网络信息资源以文本、多媒体、网站等多和形式存在,分布环境由于操作系统、数据库类型、网络条件的不同而多种多样。
——封闭性:现有各种网络信息资源各自独立,缺乏有效的互连互通机制,导致其互操作性差,协作困难,很难产生各种资源的聚合附加值。 正因为存在如此问题,所以如何把各种网络信息资源集成起来,更好地为各种网络信息用户提供信息服务,是我们利用Web Services集成网络信息资源的目的所在。我们使用Web Services集成网络信息资源,并不是要完全地替代传统的应用集成模型。实际上,我们看到在同构的系统内部,传统的分布式技术如DCOM或者CORBA等,能够很好地工作,Web Services所需要做的,是支撑现存的下层机构,把不同的异构系统连接起来成为一个有机的整体。
2)提出方案框架(见图3)
——建立一个中心交互界面,如数据库,在其服务站点上提供Web Services接口,用来实现中心数据库与异构网络资源服务器的数据库之间的通信功能。
——设置一个基于Web Services实例实现的服务,通过适配器在各异构数据库所在局域网的对外服务器上实现代理数据接入网关对异构应用系统的数据库进行访问,以解决无法访问数据库的问题。
——实现与数据库无关的数据描述。充分利用XML语言的描述能力描述各种SQL语句及数据集。
3)应用案例
下面将以物理上分布分散、使用不同语言开发、不同操作系统平台和数据库的应用系统为案例,用Web Services实现其基于Internet的整合集成。
![](https://www.soolun.com/img/pic.php?url=http://img.resource.qikan.cn/qkimages/xxdb/xxdb200609/xxdb20060920-2-l.jpg)
——需求分析。由于各种系统的开发语言、平台和数据库都存在异构性,决定选取基于Web Services的整合集成框架。
——功能分解。详细分解各系统提供的功能和服务,并编写对应的接口,封装成Web Services实例。
——步骤实施。利用SOAP和HTTP协议通过Internet发布封装的Web Services,用WSDL描述各WebServices的功能和访问接口等信息,在UDDI注册中心进行注册;客户端通过自己的用户界面,进行服务请求。用WSDL描述需要访问的服务,通过Internet用SOAP消息向注册中心发出查询请求;注册中心通过查找将对应服务的WSDL描述返回客户;客户用得到的WSDL描述生成SOAP请求消息,通过Internet绑定服务提供者。SOAP请求被作为一条HTTPPOST请求发出,交由Web服务器处理。Web服务器分析HTFP头信息并找到SOAP路由器的名称,然后将请求消息传递到指定的SOAP路由器。SOAP路由器分析HTTP头找出某个Web Services适配器的位置,将该请求传送到所请求的适配器;适配器激活应用。拥有单一或多种数据库的应用系统处理请求,并将结果返回各适配器;适配器将得到的结果打包成SOAP消息,返回给SOAP路由器。SOAP消息再返回到Web服务器。
——最终结果。客户最终得到包含执行结果的SOAP消息。
4 结 语
正如前文所介绍的那样,Web Services的提出就是为了解决异构的数据集成问题,所有上面所提到的一些异构性都可以通过Web Services技术进行整合,对服务进行定义,从而隐藏旧的应用接口的一些复杂性,异构系统间的交互(如数据交换、数据挖掘等)难题可以得到很好的解决。基于Web Services技术的网络信息资源集成方案,可以方便地实现已有系统、新开发的Web Services应用等各种系统的数据集成。只有对网络信息资源进行有效集成,才能使网络环境下的信息资源变为有序的信息空间,实现信息资源效用的最大优化,使网络信息资源发挥更大的效益,更好地为社会发展服务。