服务选择的云模型.docx
《服务选择的云模型.docx》由会员分享,可在线阅读,更多相关《服务选择的云模型.docx(17页珍藏版)》请在冰豆网上搜索。
服务选择的云模型
服务选择的云模型
摘要——云计算式基于互联网的计算,计算资源是由互联网提供的可扩展的点播服务。
Web服务被广泛的用于建设分布式云应用。
网页服务的性能会根据动态因特网环境而波动,这会增大服务质量(QoS)固有的不确定性。
随着因特网上Web服务的增加,在一组有效的理想候选者中选择最优的服务成为一个重要的研究课题。
在本文中,我们将提出一个有效的高效的QoS方面的服务选择方法。
我们的方法首先采用云模型计算QoS不确定性,修剪多余的服务而提取可靠的服务。
然后,混合整数规划会被用于选择最优的服务。
实验结果表明,我们的方法可以为用户提供可靠的和有效的最佳服务选择。
I.导言
云计算是基于互联网的计算,在互联网上提供可扩展性和按需服务的计算资源(例如,机器,网络,存储,操作系统,应用软件等。
)[1-3]。
Web服务的广泛采用是为了建立面向服务的应用(SOA)和分布式的云应用[2,4]。
根据SOA范式,复合应用程序被指定为一个抽象的服务集(称为服务类或任务)组成的抽象流程。
在服务运行时,一个具体的Web服务(称为候选服务)被选中,并为每个服务类调用。
此过程确保设计的松耦合和灵活性[5]。
服务质量(QoS)参数(例如,响应时间,价格,吞吐量等)在确定复合系统的成功或失败时扮演了重要的角色。
在预期的QoS级别上[6-7],服务等级协议(SLA)经常被用来作为服务消费者和服务提供商之间的合同基础。
QoSaware选择服务旨在有效地发现Web服务候选人的最佳组合,在完成特定的SLA情况下来满足一套最终的端到端QoS约束。
因特网环境是高度动态的。
根据服务器硬件/软件或服务器的工作量变化的更新,Web服务的QoS值可以动态改变。
此外,当新的候选服务推出是,一些在运行的已选定的服务可能会突然变得不可使用[8-9]。
所以对于面向服务的系统和云应用,对动态环境的快速反应和自适应时非常重要的。
服务选择算法的性能,可以对组成系统的整体性能有很大的影响。
最近已经提出服务选择方法[6,10-13]。
然而,这些以前的办法有两个主要的限制。
首先,先前的选择方法不考虑服务质量的不确定性。
复合应用程序的QoS值通常是通过远程Web服务聚合后的QoS值进行计算的,这些值可能来自不同的组织,实施了不同的编程语言,运行在不同平台[9]。
在变幻莫测的互联网环境,在任何位置,网络条件,时间等诸多因素的变化都可能会影响这些互联网服务的质量。
此外,QoS值可能无法准确地反映了一个Web服务的实际表现。
例如,由于“故意”欺骗[14],为了吸引大量的用户在很短的时间,并获得大量的非法获利,电子商务应用服务提供商可能并不总是提供他们的“承诺”的质量水平。
值得注意的是,具有一贯良好的QoS性能的网页服务要比在其QoS性能上有巨大变动的网页服务更加吸引人。
因此,一致性,应被视为一个服务选择的重要标准。
不幸的是,大多数现有的服务选择方法[6,10-13]没有在他们的QoS模型里慎重的考虑一致性。
其次,随着网络中网页服务的增加,Web服务选择方法的计算时间在不断变大。
实时优化Web服务选择变得越来越难。
现有方法过多侧重于优化选择算法本身以减少计算时间,而忽视基本的影响因素(例如,在Web服务的数量呈指数增长)。
在报告中[15],一直在发布的Web服务的数量从2006年10月至2007年10月期间增长超过130%。
统计发布Web服务的搜索引擎Seekda!
还表示,在过去的三年里,Web服务的数量在以指数级增加。
此外,按使用付费的商业模式,云计算模式的推广将使服务供应商给他们的用户提供不同水平的服务[16]。
因此,使用服务的用户将很快面临在不同的QoS水平得到相同服务的巨大差异。
高效的Web服务选择方法的需求正变得越来越迫切。
为了应对这些挑战,我们提出了基于云模型的Web服务选择方法。
本文的主要贡献可以概括如下。
(1)我们解决了网页服务选择的问题,并演示了在服务选择过程中不确定QoS所产生的影响。
(2)我们提出了一个新的概念,称为QoS的不确定性计算,去模拟Web服务QoS固有的不确定性。
我们采用云模型去计算QoS的不确定性。
根据云模型的三个数字特征,在QoS上有巨大变动的网页服务会被修剪。
据我们所知,这是在网页服务选择上计算QoS不确定性的首次尝试。
(3)基于云模型,我们提出了一个快速和可靠的QoS感知的服务选择方法。
我们评估了10,258现实世界的Web服务的方法,实验与详细的QoS值,以及随机生成的QoS值。
本文的其余部分安排如下:
第二节介绍了服务组合的背景。
第三节介绍的服务选择方法。
第四节给出了实验和第五节总结本文。
II.背景
A.相关概念
在本节中,我们介绍了一些相关的概念服务组合。
一个抽象的复合服务可以被定义为一个组合请求的抽象表示SC={
…,
},其中SC是指所需的服务类。
具体的复合服务可以被定义为一个抽象的复合服务的实例化。
抽象服务类中的每个SC绑定到一个具体的服务
可以得到一个具体的复合服务,其中
∈
并且
={
…,
}包涵l(l>1)不同的QoS值具有同等功能的服务。
QoS属性可以分为两类:
积极和消极的QoS属性。
积极属性意味着属性值越高,质量越好(如可靠性,可用性)。
消极属性是指和积极属性相反。
由于积极的属性值可以很容易地转换成负面属性值(即积极的属性值乘以-1),为简单起见,在本文中我们只考虑消极属性。
组合服务的QoS值合计由选定的候选服务。
表I列出的顺序组合模型的QoS聚合函数。
其他机型(例如,并行,条件和循环),可以使用[17]中描述的技术转化为连续模型。
在服务组合中,服务候选者有不同的QoS属性值。
通常采用效用函数的QoS值Qs向量映射到一个单一的实际值,以启用候选服务的排序和排列。
在本文中的QoS效用函数类似于[12]。
例如:
S的第k次的QoS属性值的最大与最小聚合值计算如下:
(1)
(2)
=
=
同理
=
=
其中,
(
)代表用户的喜好,
的第k个属性是所有候选服务的服务类
的最低值,类似的,
是最大值,
是S的第k个属性的最小值,类似的,
是最大值。
表I.QoS聚合函数
全局QoS约束的服务选择,是一个优化过程。
对于一个给定的服务组合S的最佳选择,必须满足以下两个条件:
1)对于全局QoS约束的一个给定向量CS={
…,
}(0
),q(S)
C(
CS),q(S)是组合服务聚合后的QoS值。
2)在组合服务中最大总体效用值U(S)。
然而,寻找最佳的构成需要列举候选服务的所有可能的组合,它在时间计算方面非常昂贵。
此外,它也难以保证的选择服务的可靠性。
B.相关工作
为了克服Web服务选择的问题,研究人员提出了许多方法[2,6,10-13]。
[2]中,Web服务框架提出以一种新技术的形式提供云的更高水平的抽象形式。
这项研究使服务发布,发现和基于动态属性选择的规定成为可能,这也体现了云服务和云资源的目前状态和特点。
工作[10]提出了一种新的服务选择优化方法,其中包含三个主要的想法:
(1)在最佳化中,回路剥离被采用;
(2)如果服务组合问题的一个可行的解决方案并不存在,就执行协商的QoS参数;(3)介绍一类新的全局约束。
当面临大量的具有不确定QoS的候选服务是,由于未能减少搜索空间(消除冗余的候选服务),这种计算方式也需要很长的计算时间。
[12],启发式算法被用来寻找到附近的一个最佳的解决方案。
这种算法比精确解更有效率,并且也更适合做运行时决定。
然而,这些算法不考虑服务质量的不确定性。
在动态服务环境中,选定的服务可能偏离实际执行结果。
其他相关的研究,包括动态服务选择[11],启发式的服务选择[13],蓝天服务选择[6]等。
III.通过云模型的服务选择(SSCM)
正如图1所示,建议SSCM方法包含两个阶段。
第一阶段是服务质量的不确定性计算(第III-A),在此我们采用云模型转化为定量的QoS服务质量的不确定性计算定性的QoS。
第二阶段是服务的选择(第III-B)的,在此我们采用一个混合整数编程从每个服务类中找到最合适的服务。
最终,服务组合引擎[10]调用选定的服务和服务使用者返回调用结果。
图1.SSCM方法流程
A.QoS的不确定度计算
为了在选择服务的可靠性上减少QoS不确定性的影响,SSCM采用云模型通过把定量的QoS值(交易日志)转化为定性的QoS概念(不确定性水平)来计算不确定性。
根据不确定性的程度,持续良好的QoS的Web服务可区别于那些QoS有巨大波动的服务。
1)云模型
云模型是一个不确定性转换的模型,是一种在其定性概念和数值表示之间的一种语言形式。
它可以被用作定性概念和定量描述之间的不确定性装换。
云模型可以被定义如下:
定义1.设U是论域,并且C为与U相关的定性概念。
U中的定量数值表示x到概念C的隶属度,μ(x)
[0,1],是一个具有稳定倾向的随机数,表示如下(3):
在论域U中x的分布被称为云C(X),并且x叫做云滴。
文献[18]给了多种云模型,例如普通γ云。
因为在我们的研究中,社会和自然现象中的许多不确定性概念表现为普通云,所以我们主要应用普通云模型。
云模型的总体特征可以反映它的三个数字特征:
期望值(EX),熵(EN)和增熵(HE)。
图2显示了云模型的三个数字特征,其中云滴数为1000。
在论域内,Ex处于云重力中心的位置,它的元素是与语言的概念完全兼容的;En是概念上的覆盖,即衡量的模糊性,这表明有多少元素可以接受定性的语言概念;在这些云滴上,He是一个分散的措施,这也可被考虑为En的熵。
由此,矢量NC={Ex,En,He}被称作云模型的特征向量。
图2.云模型的三个数字特征
通过使用者Ex,En,和He这三个数字特征,云发生器[18]可以产生大量的云滴。
云的三个数字特征之间表示的定性概念和一套数值化云滴所体现的一种定量表示之间的转换是通过云发生器实现的:
正向云发生器和逆向云发生器。
在这项研究中,我们应用向后云发生器(算法1)这三个数字特征通过把QoS定量值转换为定性概念来表示QoS的不确定性。
更多关于云模型的信息请参考[18]。
2)云模型的应用
首先,我们采取两种提供相似酒店网页服务的例子S和T来说明确定性和不确定性的QoS之间提供可靠的网络服务的不同影响。
在这个例子中,S和T的性能记录由一系列的事务日志,这有助于捕捉在实际应用中的每个供应商提供的实际服务质量。
因为在动态环境中,服务提供商的运作会导致其性能的不确定性,这可以反映不同交易的波动。
虽然交易的实际数量应该足够大,但为了便于说明,我们只分别参考服务S和T之间的5次交易。
这些交易都表示为(S1,...,S5)和(T1,...,T5)如表II所示。
表II给出了这些交易的响应时间值。
聚合的QoS值(s和t)(这是获得的所有交易均值)在表II的最后一行。
表II交易服务集
从表II中可得,S的聚合QoS值要大于T,即s>t。
由于26.6<27.4,在传统的服务选择方法中,网页服务T通常被选作服务组合的组件。
然而,深入分析这两项服务的每一笔交易后,我们发现传统的方法可能忽略以下两个重要的事实:
(1)虽然ţ服务的平均响应时间是比S略少,但这三笔交易服务S(S2,S4,S5)要少于(T2,T4,T5)的服务,即T2这意味着,服务S的响应时间在大多数交易中是低于服务T的;
(2)服务T的反应时间比服务S更不稳定,换言之,服务T在其QoS上更具波动性,而服务S却具有稳定良好的QoS。
根据上述两个事实,如果服务T被选做一个服务组件,T服务的实际执行结果可能会从t偏离,从而导致较差的组合服务质量或失败的服务选择。
所以,服务S比服务T更加稳定应该是显而易见的,并且S也许要比T更适合选作为一个服务组件。
因此,怎样计算网页服务的不确定性,也就是说,怎样分别一个稳定良好的QoS和一个在其QoS上有巨大波动的网页服务是一个非常重要的课题。
在本文中,我们采用云模型的向后云发生器算法来进行区分。
算法1.向后云发生器
输入:
一个网页服务的n个交易,如n个云滴{
,
,…,
}。
输出:
n个云滴的3个数字化特征Ex,En和He。
步骤:
1)根据
,计算样本均值
=
,并且样本方差
=
;
2)其QoS上网页服务的预期值可通过Ex=
计算;
3)其QoS上网页服务的熵可通过En=
计算;
4)最后,熵增可通过He=
来获得;
我们运用上述表II的算法。
从这些响应时间值可以看出,作为定量的QoS值由5个云滴表示。
即(
)或(
)。
通过特征向量每个服务的定性QoS概念(不确定程度)可以被表示。
然后这些服务S和T的特征向量,可以计算如下:
={27.40,2.11,3.10}和
={26.60,12.63,144.25}。
由于2.11<12.63且3.10<144.25,服务S的不确定性水平是小于服务T。
这意味着服务S的QoS是稳定良好的而服务T的QoS却有巨大波动。
所以,不同于传统的方法,服务S要比服务T更适于挑选为服务组件。
为了应用Web服务的云模型,根据不同的网页服务环境,我们把参数
和h设置为En和He的阙值。
有巨大QoS波动的网页服务和具有良好稳定QoS性能的网页服务可分别通过条件En
和He
h加以区分。
为了服务选择的可靠性,后者的条件较前者将成为优先的候选服务。
这将保证选定的服务可以可靠地执行。
此外,由于En>
和He>h,每个服务类的冗余候选服务将会被修剪。
通过这种方式,云模型可帮助减少服务选择的搜索空间并且缩短服务组合的计算时间。
由于服务质量的不确定性计算的是独立于任何个别的服务要求,它并不需要在要求的时间线上进行。
因此,我们为获得可靠地服务候选脱机使用云模型,以加快服务选择过程。
B.服务选择
在QoS的不确定性计算之后,在每个服务类中,具有稳定良好的QoS性能的服务候选会被甄别出。
然后需要设计服务选择算法在全局QoS约束下为每个类找到最合适的服务。
由于只关注有稳定良好性能的服务,我们加快了甄选进程的速度,并可以选择可靠地服务。
混合整数规划(MIP)是在已获得的服务上用于解决服务选择最优化问题的。
一些研究人员最近已通过使用MIP解决服务组合问题[12-13]。
在我们的研究中,代表服务候选的二元决策变量在此问题中得以应用。
在此模型的解决方案中,如果变量
被设置1,那么候选服务
会被选择为最佳组合,否则丢弃。
通过重写公式
(2)以包括决策变量,解决这一问题可被归纳为求解由公式(4)给定的整体效用值最大化问题,
(4)受全局约束影响并在满足判定条件(5)的分配约束
通过使用任意的MIP解决方法解开(4)(5),为了给服务用户提供新的增值服务,就会得到一系列的候选服务名单并且这些候选服务都会被返回给服务组合引擎或服务代理。
IV.实验
在本节中,我们将通过第四节B和第四节C中的两个实验来分别比较在[10]中提到的方法。
第一个实验表明,我们的方法成功率远远高于其他方法,并且第二次实验表明,我们的方法所消耗的计算时间比其他方法短得多。
A.实验装置
在这项研究中,我们用两种类型的数据集来进行我们的实验。
第一个数据集是[19]中来自真实世界的网页服务QoS数据集,名为WS-DREAM1。
WS-DREAM数据集包含约150万在24个国家和地区的150名服务使用者的Web服务调用的记录。
三个QoS属性值(即响应时间,响应数据大小和失效概率)收集于150个服务使用者的10,258个Web服务。
第二个数据集是一个随机生成的数据集(命名的RG),也包含10,000个网页服务的三个QoS属性值。
在实验中,我们把每个数据集随机分成10个服务类。
熵和熵增的阈值设置为(λ=3.8,h=5.9)。
QoS属性设置为3,QoS约束的数量设置为2。
每服务类的候选服务数量从10到100不等。
所有的机器都在一台配置有奔腾2.0GHZ处理器,WindowsXPSP3操作系统,Lp-Solve5.5和Matlab7.6的计算机上进行。
所有的方法是运行20次,所有的结果是平均报告。
B.成功率
在服务组成系统中,服务选择方法的一个重要目标是为服务使用者选择可靠的服务。
然而,由于不确定性的QoS,所选的服务往往偏离用户的期望,这在实际应用中可能会导致服务组合的失败。
因此,本节的目的是在服务选择过程中比较我们提出的SSCM方法与其他举世闻名的方法的成功率,例如[10]中提出的MAIS方法。
定义2.成功率(SR)是对于监测汇总的QoS值(
(S),使用者的QoS约束(
)在组合服务n是大于或者等于门限值(th)的频率,例如SR=
,且srn=
。
图3.WS-DREAM数据集的成功率比较
图4.RG数据集的成功率比较
根据定义2,对于一个服务选择方法来说,成功率越高性能越好。
图3和图4显示了在两个不同的QoS数据集上在MAIS上成功率的比较。
在这个试验中,参数被设置为th=0.86,n=200。
图3和图4中,在两个数据集上不同数量的候选服务,SSCM的成功率要比MAIS的成功率高很多。
SSCM的总体成功率为91.95
,而MAIS的成功率只有47.05。
这些实验结果表明,因为在我们的SSCM方法中,云模型被用来计算网页服务QoS的不确定性,我们的方法有效的减少了QoS的不确定性对于组合服务质量的影响并且大大提高了服务选择的可靠性。
通过使用En和He来监控QoS交易,SSCM有效地防御网页服务在QoS上的巨大波动,并减少选定的服务和实际执行结果之间的差异。
因此,选择服务的可靠性可大大提高。
C.计算时间
现有的服务选择方法通常忽略减少多余的候选人,这将导致更长的计算时间。
本节中,我们进行试验在计算时间上比较SSCM方法和MIAS方法。
表III.比较计算时间的实验结果
从表III中我们可以看见,SSCM计算时间(第二部分)很短,所有结果都小于4秒。
比较MIAS方法,在两个数据集上,SSCM的计算时间要小于MIAS的计算时间。
实验结果表明,SSCM大大降低了服务选择的时间成本,因为在我们的方法减少了搜索空间。
因此,根据实验结果成功率和计算时间,SSCM可以高效,可靠地执行面向服务的系统和组成的云应用服务选择。
V.结论
云计算通常通过Web应用程序/ Web服务为互联网上的用户提供共享资源。
为了保证Web服务选择的可靠性和实时性要求,本文提出了一种高效的基于云模型的QoS感知的服务选择方法。
我们的方法适用于云计算模型的QoS的不确定性,并使用混合整数规划,以确定最合适的Web服务。
我们评估的方法,实验使用现实世界和随机生成的Web服务QoS数据集。
实验结果表明,该方法可以有效地服务,为用户选择执行。
在我们今后的工作中,我们将继续探讨更有效的Web服务选择方法(例如,如何相应地设置En和He的临界值?
他们之间的关系是怎样的)。
目前,我们正在构建一个现实的实验平台,并在Planet-Lab为服务选择开发一个实用的中间件。
我们的目标是帮助现实世界中的服务的用户根据他们在不久的将来的QoS要求找到他们适合的服务。
参考
[1]G.Wei,A.Vasilakos,Y.Zheng,andN.Xiong,"Agametheoreticmethodoffairresourceallocationforcloudcomputingservices,"TheJournalofSupercomputing,vol.54,pp.252-269,2010.
[2]A.GoscinskiandM.Brock,"Towarddynamicandattributebasedpublication,discoveryandselectionforcloudcomputing,"FutureGenerationComputerSystems,vol.26,pp.947-970,2010.
[3]D.Habich,W.Lehner,S.Richly,andU.Assmann,"UsingCloudTechnologiestoOptimizeData-IntensiveServiceApplications,"Proceddingsofth3thIEEEInternationalConferenceonCloudComputing(CLOUD2010),2010,pp.19-26.
[4]L.Min,Z.Liang-Jie,andL.Fengyun,"AnInsuanranceModelforGuranteeingServiceAssurance,IntegrityandQoSinCloudComputing,"Proceedingsofthe8thIEEEInternationalConferenceWebServices(ICWS2010),2010,pp.584-591.
[5]G.Canfora,M.DiPenta,R.Esposito,andM.L.Villani,"AframeworkforQoS-awarebindingandre-bindingofcompositewebservices,"JournalofSystemsandSoftware,vol.81,pp.1754-1769,2008.
[6]M.Alrifai,D.Skoutas,andT.Risse,"SelectingskylineservicesforQoS-basedwebservicecomposition,"Proceedingsofthe19thinternationalconferenceonWorldWideWeb(WWW
2010),2010,pp.11-20.
[7]V.Cardellini,E.Casalicchio,V.Grassi,andF.LoPresti,"Flow-BasedServiceSelectionforWebServiceCompositionSupportingMultipleQoSClasses,"Proceedingsfothe5thIEEEInternationalConferenceonWebServices(ICWS2007),2007,pp.743-750.
[8]Z.Zibin,Z.Yilei,andM.R.Lyu,"CloudRank:
AQoS-DrivenComponentRankingFrameworkforCloudComputing,"Proceedingsofthe29thIEEESymposiumonReliableDistributedSystems(SRDS2010),2010,pp.184-193.
[9]Z.Zibin,T.C.Zhou,M.R.Lyu,andI.King,"FTCloud:
AComponentRankingFrameworkforFault-TolerantCloudApplications,"Proceedingsofthe21th