一种融合异常Qos数据检测的新型云服务筛选方法与流程

文档序号:16544348发布日期:2019-01-08 20:44阅读:183来源:国知局
一种融合异常Qos数据检测的新型云服务筛选方法与流程

本发明涉及云服务筛选系统中,一种融合异常qos数据检测的云服务筛选方法。基本思想是:目标用户发送n个功能类似的云服务筛选请求给筛选中心,筛选中心考虑目标用户调用云服务环境的状态变化,从使用过这n个云服务的用户集中选择与目标用户的云服务调用环境最相似的top-k个用户。然后使用多重决策树投票的方法将具有异常qos数据的用户从top-k个用户中过滤掉,并利用剩下的用户所提供的qos数据为目标用户建立qos服务评价模型。最后,结合目标用户的需求得到n个功能类似的云服务排名,并将排名结果发送给目标用户。本发明能够选择与目标用户的云服务调用环境最类似的用户来提供qos数据作为云服务排名的计算依据,并有效检测出用户的异常qos数据同时过滤具有这些异常qos数据的用户,在增强云服务筛选结果准确度的同时,保证了云服务的可信性,属于计算机云计算领域。



背景技术:

随着云计算的快速发展和广泛应用,许多云服务商提供了很多功能类似的云服务,而这些云服务往往在性能和价格上有差异。如何从这些大量的具有相似功能的云服务中筛选出满足用户需求的云服务成为一项非常重要的工作。基于qos属性的云服务决策方法是现今云服务选择的主要手段。该类方法经常通过预测目标用户的云服务的qos属性值来建立服务评价模型,且前提是由监控设备收集的用来建立服务评价模型的qos属性值能够表示云服务的实际性能。然而,事实上是在实际的市场环境中存在大量虚假的qos属性值。比如,一些恶意的云服务提供商既不想增加服务成本,又想使其提供的云服务获得更好的筛选结果。往往会对qos数据进行篡改,使得一个性能较差的云服务具有较高的排名。目前,大量虚假的qos属性值已经严重影响了云服务排名结果的准确度。此外,在用户调用云服务过程中,由于云平台基础设施发生的故障也会产生一些错误的qos数据。这些错误的qos数据也会影响云服务排名结果的准确度。我们将上述两种情况产生的qos数据,统称为异常的qos数据。

在云服务的选择过程中引入信任机制来排除具有异常qos数据的云服务是目前云服务选择方法常用的技术手段。虽然在云服务选择方法中融合信任机制能够在一定程度上排除掉具有异常的qos属性值的云服务,但在实际应用中由于云服务调用环境的动态变化使得信任评估的结果往往与实际情况有很大偏差。比如,对于相同的云服务来说,在不同的云服务调用环境中计算云服务的信任值,会得到不同的信任评估结果。例如,在环境d中调用云服务c得到的信任评估结果为td,在环境f中调用云服务c得到的信任评估结果为tf,其中tf>td且td的值为一个较差的信任度值。然而根据td并不能说云服务c的服务性能较差,只能说明云服务c的性能在环境d中不能够完全体现,而在环境f中,云服务c能够达到更好的性能。所以,在云服务选择过程中,考虑目标用户在调用云服务时的环境,是十分重要且必要的。

目前已有云服务筛选方法专注于基于信任机制来排除具有异常qos数据的云服务,并没有考虑到云服务调用环境的动态变化,因此迫切需要提出新的解决方法。



技术实现要素:

本发明的目的是克服现有云服务选择方法的不足,提供一种融合异常qos数据检测的云服务筛选方法,该方法考虑到了云服务调用环境的动态变化,保证用来建立服务评价模型的qos数据的产生环境与目标用户的云服务调用环境相似,同时使用多重决策树投票的方法过滤掉异常的qos数据,并根据目标用户的需求为其筛选适合的云服务。

该方法首先由目标用户发送n个功能类似的云服务筛选请求给筛选中心,筛选中心通过用户筛选模块挑选出使用过这n个功能类似的云服务的用户,生成待选用户集,并使用用户聚类模块将待选用户集中用户的云服务调用环境与目标用户的云服务调用环境进行比对,从待选用户集中将与目标用户的云服务调用环境最相似的top-k个用户分配到同一组,生成中间用户集。然后异常qos数据检测模块使用多重决策树投票的方法将中间用户集中具有异常qos数据的用户过滤掉,并生成最终用户集。筛选中心的qos预测模块通过最终用户集中用户的qos数据预测目标用户对n个功能类似的云服务的qos属性值,最后,云服务排名模块根据qos预测模块计算出的qos属性值和目标用户的需求得到n个功能类似的云服务排名,并将排名结果发送给目标用户。本发明能够选择与目标用户的云服务调用环境最类似的用户来提供qos数据作为云服务排名的计算依据,并有效检测出用户的异常qos数据同时过滤掉具有这些异常qos数据的用户,在增强云服务筛选结果准确度的同时,保证了云服务的可信性。

为实现上述目的,本发明采取以下技术方案:

本发明具体实施时包括功能模块部署阶段;用户发送筛选请求阶段;用户筛选阶段;用户聚类阶段;异常qos数据检测阶段;云服务的qos属性值预测阶段;云服务排名阶段。如图1所示。首先在云服务筛选系统中部署用户端模块和筛选中心,然后在筛选中心部署用户筛选模块、用户聚类模块、异常qos数据检测模块、qos属性值预测模块和云服务排名模块。如图2所示。假设目标用户通过用户端模块发送n个功能类似的云服务筛选请求给云服务筛选中心,筛选请求包括目标用户的云服务调用环境参数,目标用户对这n个功能类似的云服务的qos属性偏好值,以及n个功能类似的云服务的参数。云服务筛选中心收到筛选请求后启动用户筛选模块,用户筛选模块根据筛选请求中包含的n个功能类似的云服务的参数从它的用户数据库中挑选出使用过这n个功能类似的云服务的用户,同时生成待选用户集。用户筛选模块的用户数据库中的用户数据集由云用户和云服务商提供,包含了每个用户的用户名、调用过的云服务的qos属性值,调用云服务时的环境参数以及用户的云服务qos属性偏好值。待选用户集包含了集合用户调用这n个功能类似的云服务的环境参数、集合用户对这n个功能类似的云服务的qos属性值和对这n个功能类似的云服务的qos属性偏好值。然后用户筛选模块删除掉筛选请求中包含n个功能类似的云服务参数的内容,将筛选请求重新封装成聚类请求,并将聚类请求和待选用户集一起发送到用户聚类模块。用户聚类模块对聚类请求中包含的目标用户的云服务调用环境参数和待选用户集中的集合用户调用n个功能类似的云服务的环境参数进行比对,从待选用户集中将与目标用户的云服务调用环境最相似的top-k个用户分配到同一组,生成中间用户集。中间用户集包含了集合用户对这n个功能类似的云服务的qos属性值。生成中间用户集后,用户聚类模块删除掉聚类请求中包含的目标用户的云服务调用环境参数将聚类请求重新封装成异常qos数据检测请求,并将异常qos数据检测请求和中间用户集一起发送给异常qos数据检测模块。异常qos数据检测模块将它的标准qos数据库中的qos数据作为训练集,并利用多重决策树投票方法生成多重决策树,中间用户集中的qos数据被异常qos数据检测模块作为输入样本输入到每棵决策树,然后决策树输出对中间用户集中qos数据值的分类预测:0或1,0表示异常值,1表示正常值。最后多重决策树分别对0或者1这两种值进行投票,将得票最多的值作为最终结果,并以此为依据过滤掉中间用户集中具有异常qos数据的用户,生成最终用户集。异常qos数据检测模块中的标准qos数据库由云服务商提供,每一个qos数据都包含一个取值为0或1的类别标签label,该标签用来表示qos是正常值还是异常值,当label=0时是异常值,label=1时是正常值。标准qos数据集作为训练集包含了云服务qos数据的正常值和异常值,每一个决策树都会从训练集中抽取一定数量的样本来进行训练。最终用户集包含了集合用户对这n个功能类似的云服务的qos属性值以及qos属性偏好值。异常qos数据检测模块将异常qos数据检测请求重新封装成qos预测请求,并将预测请求和最终用户集发送给qos属性值预测模块。qos属性值预测模块计算目标用户与最终用户集中用户的云服务qos属性偏好值之间的距离,并在此基础上根据最终用户集中集合用户对这n个功能类似的云服务的qos属性值来预测目标用户对n个功能类似的云服务的qos属性值。然后,qos属性值预测模块将预测的目标用户对n个功能类似的云服务的qos属性值与qos预测请求中包含的目标用户的云服务qos属性偏好值一起重新封装成排名请求,发送给云服务排名模块。云服务排名模块根据我们改进的最优距离法计算出n个功能类似的云服务排名。最后将排名结果发送给目标用户。

本发明提出的融合异常qos数据检测的新型云服务筛选方法与现有的技术相比,具有以下优势和技术效果:

本方法考虑了云服务调用环境的动态变化,将用户所处的地理位置、网络状况和硬件条件的安全等级作为描述云服务调用环境的参数。在聚类阶段对目标用户的云服务调用环境以及待选用户集中用户的云服务调用环境进行比对,聚类出云服务调用环境参数与目标用户相似的用户,保证了后续阶段用来提供qos数据建立服务评价模型的用户与目标用户具有相似的云服务调用环境,弥补了已有的融入信任机制的云服务选择方法忽略云服务调用环境的不足,同时用来建立服务评价模型的qos数据的产生环境与目标用户的云服务调用环境相似也极大地增强了云服务选择的准确性。

本方法在异常qos数据检测阶段创新地使用多重决策树投票的方法来检测异常值,首先将云服务提供商给出的标准qos数据集作为训练集来建立多棵决策树,然后将用户的qos数据作为输入样本输入到每棵决策树,通过投票统计每棵决策树得到的结果进行异常qos数据检测。多重决策树投票的方法由于使用多棵决策树模型各自独立学习和进行投票因此极大地增加了异常qos数据的检测率。

本方法在云服务排名阶段利用我们改进的最优距离法对n个功能类似的云服务进行排名,由于我们改进的最优距离法考虑了目标用户的云服务qos属性偏好,因此具有不同qos属性偏好值的用户能够得到不同的排名结果,使得排名结果满足了目标用户的个性化需求。

本发明提出的融合异常qos数据检测的新型云服务筛选方法,能够在整个云服务的筛选过程中有效地检测出异常的qos数据并且在满足目标用户个性化需求的同时保证了云服务选择的准确性。该方法旨在给出一种应用于云计算环境的云服务筛选方法,排除异常的qos数据,实现个性化的云服务排名和筛选。

附图说明

图1具体实施过程的关键阶段

图2具体实施过程的功能模块

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面结合附图和实施例对本发明作进一步的详细描述:

具体实施过程如图1,具有以下特征:

整个云服务筛选系统包括用户端模块;筛选中心;用户;筛选请求;待选用户集;聚类请求;中间用户集;异常qos数据检测请求;最终用户集;qos预测请求;排名请求;排名结果;

本发明具体实施时包括功能模块部署阶段;用户发送云服务筛选请求阶段;用户筛选阶段;用户聚类阶段;异常qos数据检测阶段;qos属性值预测阶段;云服务排名阶段。

功能模块部署阶段:

首先在云服务筛选系统中部署若干个用户端模块,其中每个用户端部署1个用户端模块;然后部署1个筛选中心,然后在筛选中心部署1个用户筛选模块、1个用户聚类模块、1个异常qos数据检测模块、1个qos预测模块和1个云服务排名模块;最后在用户筛选模块中部署用户数据库,在异常qos数据检测模块中部署标准qos数据库。

用户发送云服务筛选请求阶段:

目标用户通过用户端模块发送n个功能类似的云服务筛选请求给云服务筛选中心,筛选请求包括目标用户的云服务调用环境参数,目标用户对这n个功能类似的云服务的qos属性偏好值,以及n个功能类似的云服务的参数。

用户筛选阶段:

云服务筛选中心收到筛选请求后启动用户筛选模块,用户筛选模块根据筛选请求中包含的n个功能类似的云服务参数从它的用户数据库中挑选出使用过这n个功能类似的云服务的用户,同时生成待选用户集dw。用户筛选模块的用户数据库中的用户数据集由云用户和云服务商提供,包含了每个用户的用户名、调用过的云服务的qos属性值,调用云服务时的环境参数以及用户的云服务qos属性偏好值。待选用户集包含了集合用户调用这n个功能类似的云服务的环境参数、集合用户对这n个功能类似的云服务的qos属性值和对这n个功能类似的云服务的qos属性偏好值。然后用户筛选模块删除掉筛选请求中包含n个功能类似的云服务的参数的内容,将筛选请求重新封装成聚类请求,并将聚类请求和待选用户集一起发送到用户聚类模块。

用户聚类阶段:

用户聚类模块对聚类请求中包含的目标用户的云服务调用环境参数和待选用户集中的集合用户调用n个功能类似的云服务的环境参数进行比对,从待选用户集中将与目标用户的云服务调用环境最相似的top-k个用户分配到同一组,生成中间用户集。k由云服务筛选中心根据实际需要来选择适合的数值,如100、200等。中间用户集包含了集合用户对这n个功能类似的云服务的qos属性值。生成中间用户集后,用户聚类模块删除掉聚类请求中包含的目标用户的云服务调用环境参数将聚类请求重新封装成异常qos数据检测请求,并将异常qos数据检测请求和中间用户集一起发送给异常qos数据检测模块。

本发明中,云服务调用环境(cloudservicecallenvironment,csce)参数包括地理位置、硬件条件的安全等级、网络状况。云服务调用环境可以表示成向量csce=(li),其中i=1,2,3。在csce中:

i=1,指用户调用云服务时所处的地理位置;

i=2,指用户调用云服务时其硬件条件的安全等级;

i=3,指用户调用云服务时所处的网络状况。

比对云服务调用环境的计算公式如下:

其中,i∈(1,2,3),k∈(1,2,…,|dw|),uo是目标用户,是待选用户集中的第k个用户,表示目标用户uo与待选用户集中的用户之间的云服务调用环境的距离,e的值越小,距离越近。分别表示目标用户uo和待选用户的云服务调用环境的第i个参数的值归一化之后的结果,i∈(1,2,3)。|dw|表示待选用户集的大小。

根据以上比对方法,聚类得到中间用户集dm。

异常qos数据检测阶段:

异常qos数据检测模块将它的标准qos数据库中的qos数据作为训练集,并利用多重决策树投票方法生成多重决策树,中间用户集中的qos数据被异常qos数据检测模块作为输入样本输入到每棵决策树,然后决策树输出对中间用户集中qos数据值的分类预测:0或1,0表示异常值,1表示正常值。最后多重决策树分别对0或者1这两种值进行投票,将得票最多的值作为最终结果,并以此为依据过滤掉中间用户集中具有异常qos数据的用户,生成最终用户集。异常qos数据检测模块中的标准qos数据库由云服务商提供,每一个qos数据都包含一个取值为0或1的类别标签label,该标签用来表示qos是正常值还是异常值,当label=0时是异常值,label=1时是正常值。标准qos数据集作为训练集包含了云服务qos数据的正常值和异常值,每一个决策树都会从训练集中抽取一定数量的样本来进行训练。最终用户集包含了集合用户对这n个功能类似的云服务的qos属性值以及qos属性偏好值。异常qos数据检测模块将异常qos数据检测请求重新封装成qos预测请求,并将预测请求和最终用户集发送给qos属性值预测模块。

本发明利用多重决策树投票方法进行异常qos数据检测的步骤如下:

1)首先,从标准qos数据库中获取标准qos数据集db,db的大小为l;

2)利用多重决策树投票方法从数据集db抽样出大小为l的数据集合dc,将这个取样过程重复j次,直到生成j个大小为l的数据集,其中dcj表示由数据集db生成的第j个数据集,j是可设置的参数;

3)利用数据集dcj建立一个决策树表示数据集dcj中的第i个qos数据,j个数据集一共建立j棵决策树;

4)将中间用户集中的qos数据作为输入样本输入到j棵决策树,然后j棵决策树输出对中间用户集中qos数据值的分类预测:0或1,0表示异常值,1表示正常值。

5)设置两个投票箱,zero用来存储检测结果为0的票数,one用来存储检测结果为1的票数;

6)投票结束后,比较两个投票箱zero和one的大小,将得票最多的值作为最终结果,并以此为依据过滤掉中间用户集中具有异常qos数据的用户,生成最终用户集。

云服务的qos属性值预测阶段:

qos属性值预测模块计算目标用户与最终用户集中集合用户对这n个云服务的qos属性偏好值之间的距离,并在此基础上根据最终用户集中集合用户对这n个功能类似的云服务的qos属性值来预测目标用户对n个功能类似的云服务的qos属性值。然后,qos预测模块将预测的目标用户对n个功能类似的云服务的qos属性值与qos预测请求中包含的目标用户的云服务qos属性偏好值一起重新封装成排名请求,发送给云服务排名模块。

预测目标用户对n个功能类似的云服务的qos属性值的步骤如下:

1)依次计算这n个云服务的qos属性值,si表示第i个云服务,i=1,2,...n。

2)如果目标用户uo使用过云服务si,则云服务si的qos属性值的预测结果为是目标用户uo对云服务si的qos属性的预测值,是目标用户uo之前对云服务si的qos属性的历史评价值。如果目标用户uo没有使用过云服务si,则计算目标用户与最终用户集中用户的云服务qos属性偏好值之间的距离,并在此基础上根据最终用户集中集合用户对云服务si的qos属性值来预测目标用户对云服务si的qos属性值。预测步骤如下:

(1)首先,计算目标用户uo与最终用户集df中每个用户对云服务si的qos属性偏好值的距离,计算公式如下:

公式中,是最终用户集df的第t个用户,最终用户集中的用户个数假设为v。

uo是目标用户集中的目标用户,分别表示用户uo和对云服务si的qos属性偏好值。

(2)基于用户集中集合用户对云服务si的qos属性值来预测目标用户对云服务si的qos属性值计算公式如下:

是目标用户uo对云服务si的qos属性值的预测结果,是用户

对云服务si的qos属性的历史评价值,是目标用户uo与用户

对云服务si的qos属性偏好值的距离。

云服务排名阶段:

云服务排名模块根据我们改进的最优距离法计算出n个功能类似的云服务排名。最后将排名结果发送给目标用户。我们改进的最优距离法计算云服务排名的步骤如下:

1)首先,对n个云服务的qos预测结果进行归一化处理,得到

2)对这n个值进行排序,将排序得到的最大值记为最优值最小值记为最劣值

3)计算云服务si的排名评估值,公式如下:

其中,si表示第i个云服务,表示用户uo对云服务si的qos预测值归一化的

结果,i=1,2,...n。与最优值之间的距离。

与最劣值之间的距离。是目标用户uo

对云服务si的属性偏好值。g(sj)是云服务si的排名评估值。

4)重复步骤3,直到计算出所有n个云服务的排名评估值,然后对排名评估值进行排序,排名评估值最大的云服务排第一名,评估值最小的云服务排第最后一名。

最后应说明的是:以上实施例仅用以说明本发明而并非限制本发明所描述的技术方案;因此,尽管本说明书参照上述的各个实施例对本发明已进行了详细的说明,但是,本领域的普通技术人员应当理解,仍然可以对本发明进行修改或等同替换;而一切不脱离发明的精神和范围的技术方案及其改进,其均应涵盖在本发明的权利要求范围当中。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1