Web服务技术—大数据抓取及存储的研究的问题和
web服务(web service)技术,即是的运行在不同机器上的数据交换或者集成,不需要借助第三平台或者手段,而进行通信的一种技术。无论其是用什么语言实现的,都能够自由的进行数据的交换和处理。[1]本文主要是对web服务技术进行一个全局性的介绍,并且对一些关键技术进行深入的解析。使得读者能够深入的、以及全面的了解web服务技术。
1 web服务的简介
1.1 web服务的发展过程
Web服务的发展经历了十分漫长的过程,大概可以分为四个阶段:TCP/IP阶段,在网络设备以及各种通信协议中的到应用;在HTML(超文本标记语言)中通过其强大的B/S的特性,可以使用HTML标签显示数据;因为JAVA本身就是跨平台运行的,所以很多的web服务技术是通过JAVA来进行编写的;XML(可扩展标记语言),通过通用数据的表达,使得结构化数据在web上传送变得更加容易。
1.2 web服务的基本定义
web服务是一种模块化、松散耦合的、可重复使用的、自治的一种服务。当今web服务的研究方向分为两个方向:学术研究和商业运行,学术研究指的就是各个研究所以及科研机构的研究,对web服务进行创新和前卫的研究。而所谓的商业运行指的就是把web服务用于盈利。[2]比如阿里巴巴的阿里云,百度的百度云等现在流行的云技术都是web服务技术。
Web服务主要是通过URI来对软件程序进行识别,使其他程序在Internet上通过对外借口对其进行访问。通过借口,我们可以找到入口的物理位置,以及此时的状态,此外通过端口可以交换信息。例如,在人工智能中搜索中国和美国汇率的换算问题时候。
1.3 web服务的网络体系
在商业运行的web服务中主要要有以下技术的支撑:通用描述发现集成(Universal Description,Discovery and Integration,UDDI),简单对象访问协议(Simple Object Access Protocol,SOAP),web服务标记语言(Web Service Description Language,WSDL),web服务流语言(Web Service Flow Language,WSFL)。通过这些技术的支持才能够使得商业运行的web服务快速的发展,并且取得了一些令人骄傲的成就,但是其还是存在一些缺点,比如通信之间的语义的表达的不准确,这是由于web服务还处于发展的阶段,各种语义以及格式的规范还没有完全成型,这是发展过程中所必须经历的一部分,相信经过长时间的发展会使得的这些不便能够得到改善。
SOAP简单访问对象协议,主要是进行数据交换服务的,这其中主要是通过XML服务来进行的,通过SOAP这样的协议的框架,Internet上的服务以及资源都能够串联起来以达到共享的目的。WSDL即web服务标记语言,是用来对SOAP服务进行解释和说明的,相当于程序的一个软件文档。WSDL对于web服务来讲是十分重要的。其中一般会描述常用的数据类型、消息的格式、方法名称以及一些参数等,UDDI统一描述、发现和集成是一种在广阔的web服务空间里能够相互发现的一种机制,其原理是一个简单的搜索引擎,但是最重要的是,通过编程能够对其的方法能够极大的扩充[5]。
2 web服务组合的介绍
当单个的web服务不能满足需求时,多个的web服务就可以通过相应的机制就能够组合起来,这就构成了web服务组合。如图2所示,1到7作为一个应用程序对空间中的web的服务进行相对于的选择性调用,所有的web服务组成了web服务应用池,也就是web服务组合。
2.1 基于语义web服务组合
基于语义的Web服务组合是一个新兴的研究领域,依照组合方案生成方式可将其分为两大类:静态组合和动态组合。
静态组合是在业务流程建模时绑定任务,即传统的工作流任务绑定形式,意味着请求者应在组合计划实施之前创建一个抽象的过程模型。web静态服务一般是指在设计以及编译阶段,依据环境以及不同变量的需求,对已经形成的服务进行定向的组合以及发布,从软件工程师的角度来看就是利用已经形成的模块体系来进行二次的开发;因此首先我们要列出所有符合条件的功能,紧接着我们根据功能的列表,来进行定位以及选择。
而动态组合在建模时并不与具体的Web服务实现绑定,而是静态绑定任务的功能描述,在执行时动态绑定任务的实现性描述。当前的随着web服务组合的发展,已有的web服务组合并不能支撑其,因此web服务组合必须要以更加丰富的语义进行描述,动态web服务组合凭借其庞大的web服务库,以及稳定的传输以及连接,所以动态web服务组合才能够快速的发展。[12]
服务组合涉及的内容可以从其生命周期的角度分为两个阶段:服务组合建立阶段和运行阶段。就Web服务组合而言,与语义Web现行标准相对应一组分层的规范如图1所示。当中,U
RI通用资源标识符(Uniform Resource Identifier),就像GPS服务一样能够,能够准确的找到web服务的资源。RDF资源描述框架(Resource Description Framework)、RDF-Schema(RDF-S)以及Web本体语言-OWL(Web Ontology Language)是这些都是语义web所不可缺少的部分,是语义web的基石。
2.2 基于动态工作流模型的web服务组合
动态工作流模型,就是所有的web服务组件都有一整套完整的行为规范。在工作流模型的初期的设计阶段,主要是依靠各种模块直接的组合关系进行选择性的匹配。通过此种模型的设计,所熟悉的基于Pareto的解集的方案,也能够通过此种模式进行设计出来。[15]
其中主要引入的是动态工作流的问题,之所以说其是动态,这是相比较静态而言的,是两个完全不同的概念,这两个概念的最大不同主要是在于对不同模块之间的衔接的流畅性的不同,动态工作模型对于不同模块之间的组合衔接的比较流畅。而静态工作模型,各模块之间的相对稳定性还是有待提高的。[16]
根据服务组合的特点,基于工作流的服务组合可以分为三类,包括预定义,模板和按构建的组合。
⑴预定义的服务组合,即对相关的组合进行事先的定义,按照预定义的结果,将其带入到相适应的工作流服务组合中去。这样的缺点就是服务是静态的,是事先将其写死的。
⑵模板式的服务组合,即在相关服务开始之前找到相适应的模板,然后进行然后嵌套,此种方法的优点是可以简便操作的方法,节约时间和效率,是资源的得到最大程度的利用,而且使得能够快速解决一些棘手的问题,缺点是:能够解决的模型相对而言比较的简单,难以有深刻的方让其来解决,而且其结果是静态的,无法根据其动态的变化而产生相应的变化。[17]
⑶按构建的服务组合:按照服务的需求量,对web服务组合产生一定的定制的效应,可以根据web服务组合的工作量,对web服务产生一些空间大小的演绎。这种方法的优点被无限的利用,它适合现在的这种多元的的空间的利用,而且能够有一定的自反性的特点。
3 web服务技术在大数据中的应用
大数据的飞速发展,使得web服务在其中应用更加的广阔,大数据的存储和抓取都需要用到web服务,其所需要的是web服务组合,需要运用到基于语义的web服务组合,以及基于动态工作流的web服务组合,两者的混合运用能够使得web服务技术在大数据的挖掘和存储,运用的更加深透,特别是在代购网站的兴起,对淘宝、亚马逊等网站的数据的抓取和存储,进行需要相应的web服务技术,而上述的web技术就是我们所需要的,通过相应的算法进行大数据的抓取和存储。
4 服务组合演化
Web服务组合上面所介绍的只是一些简单的web服务组合,除此之外产生了许多的web服务组合的演化。比如:QoS全局感知的Web服务组合方法、提出基于SLM的抽象服务节点自动合成方法,基于Petri网的服务组合模型验证方法;这些都是web服务组合的升级版,这些升级版能够使用一些能够使得运用的更加的方便,围绕服务组合建立阶段的主要问题重点研究满足语义要求及QoS约束的Web服务组合及抽象服务节点自动合成机制,并关注组合模型的正确性验证问题。[18]因此web服务组合在未来还有很多的提升空间。
[参考文献]
.软件学报.2004,15(3):428-440.
.吉林大学.2007,30-79.
.株洲工学院学报.2006.11:127-129.
.计算机技术与发展.2014.1:109-112.
.微处理机.2005.4:1-3.
[6]Shmueli ectures for internal Web services :Apers P, the 27th Int’l Very Large :Morgan Kaufmann Publishers,2001.641-644.
[7]谢海军,齐连永,窦万春.基于Skyline和局部选择的启发式服务组合方法[J].东南大学学报.2011,41(3):449-451.
计算机科学.201037 (5):21-25.
[9]王勇,代桂平,候亚荣.信任感知的组合服务动态选择办法[J].计算机学报.2009,32(8):1000-1003.
.浙江大学.2005:50-83.
.2014.1:148-152.
.网络安全. 2013.4:39-43.
.东南大学.2006:60-70.
[14]黎富刚,沈卓炜,冯名正,等.CORBA A/V Streams服务的实现及其在远程教育中的应用[J].计算机工程与应用.2003,16:130-132.