云平台任务最大资源使用率预测方法技术

技术编号:22308090 阅读:103 留言:0更新日期:2019-10-16 08:12
本发明专利技术公开云平台中任务在未来一段时间内的最大资源使用率预测方法,基于云平台多个任务的历史资源使用信息,通过分析云平台任务的资源使用情况提取初步任务资源使用特征,然后使用稀疏自编码模型进一步提取特征,接着使用K‑medoids聚类方法对任务进行聚类,并对每一个任务类别使用改进的随机森林回归模型进行训练,最后,基于给定的任务在最近一段时间内的资源使用率历史信息,就可以利用训练好的模型预测出该任务在未来一段时间内的最大资源使用率。同时,根据云平台任务的资源使用特征,本发明专利技术也设计了适合任务的资源使用预测性能评价函数——改进的平均绝对百分比误差,该评价函数更能直观反映出不同的任务资源使用预测方法的性能差异。

Prediction method of maximum resource utilization of cloud platform tasks

【技术实现步骤摘要】
云平台任务最大资源使用率预测方法
本专利技术涉及云计算领域,尤其涉及云平台中一种任务最大资源使用率预测方法。
技术介绍
虽然云计算提供了便捷灵活的资源管理方式,但是现有大多数云平台的资源使用率依然较为低下,比如,Twitter云平台千台服务器在一个月内的总CPU使用率始终低于20%,然而预留的资源却达到了总资源的80%;Google云平台CPU平均使用率在10%~45%之间波动。预测任务的资源使用状况是提高云平台资源使用率的重要手段之一。但是云平台任务资源使用的动态性、不确定性和突变性使得预测工作变得困难。现有的大部分相关研究都是基于仿真数据而展开的,最终的实验结果缺乏有效的说服性。而针对真实云平台数据集,目前已提出了利用反向传播神经网络模型、随机森林回归模型(BreimanL.Randomforests[J].Machinelearning,2001,45(1):5-32)进行任务负载预测,但是由于这些模型没有充分考虑到云平台任务资源使用的特点,造成预测的性能有待进一步提高。稀疏自编码模型(AndrewNg."Sparseautoencoder."CS294ALecturenotes72.2011(2011):1-19.)可以自动从无标签样本数据中学习特征,可以进一步提升预测模型的准确度。K-medoids聚类方法(ParkHS,JunCH.AsimpleandfastalgorithmforK-medoidsclustering[J].Expertsystemswithapplications,2009,36(2):3336-3341.)以样本中的数据为中心,对样本中的异常值具有较好的鲁棒性。
技术实现思路
本专利技术的目的在于提供一种具有较低的平均绝对误差和较低的改进平均绝对百分比误差的云平台任务最大资源使用率预测方法。改进的平均绝对百分比误差公式如下所示:其中,R表示测试样本数量,a1和a2是两个实参数,且a1<a2,hi表示测试样本集中样本i的目标真实值,Hi表示测试样本集中样本i的目标预测值。为解决上述问题,本专利技术的云平台任务最大资源使用率预测方法采用了如下技术方案:云平台任务最大资源使用率预测方法,包括如下步骤:S1、先对云平台任务资源使用状况历史数据集中缺失的数据进行填充,然后统计各任务在时间间隔为T内的平均资源使用率和最大资源使用率,其中,平均资源使用率包括平均CPU使用率、平均内存使用率,最大资源使用率包括最大CPU使用率、最大内存使用率;S2、使用n个连续计时周期,每个计时周期时长为T,基于n个计时周期内任务的最大资源使用率提取任务的加权最大资源使用率和最大资源使用率的公平性指数,其中,加权最大资源使用率包括加权最大CPU使用率、加权最大内存使用率,最大资源使用率的公平性指数包括最大CPU使用率公平性指数、最大内存使用率公平性指数;S3、将上述n个计时周期内的平均资源使用率和最大资源使用率、基于n个周期的加权最大资源使用率和最大资源使用率的公平性指数、任务的优先级作为样本的特征集Z’,并将每个特征在所有任务中的最大值保持在Mi中,i为特征的序号且Mi≠0,接着对所有任务的每个特征各自进行归一化处理,然后将其结果作为样本的初始数据集;S4、基于上述样本的特征集和初始数据集,使用稀疏自编码模型进一步提取任务特征,得到新的特征集Z={z1,z2,…,zf},结合各任务的这些特征值以及第(n+1)个计时周期内的最大CPU使用率或者最大内存使用率得到新的样本数据集D,其中,第(n+1)个计时周期内的最大CPU使用率或者最大内存使用率是样本的目标变量;S5、基于步骤S4中得到的样本数据集D,使用K-medoids聚类算法将任务分成L类,得到L个样本数据子集,每一类别都有一个中心任务ci,i=1,2,…,L;S6、按照一定比例(b1:b2)将每一类样本数据子集分成训练集和测试集两个部分,其中b1、b2为正实数,且b1>b2;这样,就得到L个训练集和测试集的组合;S7、基于每一类样本数据子集中的训练集数据,使用改进的随机森林回归模型进行训练,得到L个已训练好的改进的随机森林回归模型;S8、基于对应的测试集数据,使用改进的平均绝对百分比误差对已训练好的改进的随机森林回归模型进行性能评价,改进的平均绝对百分比误差公式如下所示:其中,R表示测试样本数量,a1和a2是两个正实参数,且a1<a2,hi表示测试样本集中样本i的目标真实值,Hi表示测试样本集中样本i的目标预测值;S9、给定需预测的任务在最近连续时间段(n×T)内等距离监测点下的最大资源使用率和平均资源使用率,确定该任务的类别;S10、使用步骤9得到的任务类别对应的已经训练好的改进的随机森林回归模型,对任务进行预测。进一步的,步骤S1具体包括:S10:对于云平台任务资源使用状况历史数据集中的缺失数据,先进行填充;S11:计算时间段T内K个等距离监测点下的任务的平均CPU使用率的算术平均值,作为该时间段T内的任务的平均CPU使用率;S12:计算时间段T内K个等距离监测点下的任务的平均内存使用率的算术平均值,作为该时间段T内的任务的平均内存使用率;S13:从时间段T内K个等距离监测点下的任务的最大CPU使用率中取最大值,作为该时间段T内的任务的最大CPU使用率;S14:从时间段T内K个等距离监测点下的任务的最大内存使用率中取最大值,作为该时间段T内的任务的最大内存使用率。进一步的,步骤S2具体包括:S20:基于步骤S1得到的任务在时间段(n×T)内的n个最大CPU使用率,计算任务的加权最大CPU使用率;S21:基于步骤S1得到的任务在时间段(n×T)内的n个最大内存使用率,计算任务的加权最大内存使用率;S22:基于步骤S1得到的任务在时间段(n×T)内的n个最大CPU使用率,计算任务的最大CPU使用率的公平性指数;S23:基于步骤S1得到的任务在时间段(n×T)内的n个最大内存使用率,计算任务的最大内存使用率的公平性指数;进一步的,步骤S7具体包括:S70:使用以下的函数作为改进的随机森林回归模型特征值对选择函数:其中,其中,Xm是当前训练样本集合,Nm是当前训练样本集合包含的样本数,i为样本集合中一个样本的编号,k1和k2是两个正实参数,且k1<k2;yi是样本i的目标值,是当前训练样本集合中所有目标值的算数平均数;S71:基于步骤S6得到的每一个训练集,分别使用步骤S70所述的改进的随机森林回归模型进行训练,得到L个不同的改进的随机森林回归模型。进一步的,步骤S9具体包括:S90:对于任务在最近连续时间段(n×T)内的最大资源使用率和平均资源使用率,如果存在缺失数据,先进行填充,然后,统计该任务在时间间隔为T内的平均资源使用率和最大资源使用率;S91:使用步骤S2所述方法,计算该任务的加权最大资源使用率和最大资源使用率的公平性指数;S92:将步骤3的Z’作为该任务的初始特征集,使用步骤3得到的Mi对这些特征值各自进行归一化处理;S93:以步骤4得到的新特征集Z={z1,z2,…,zf},作为该任务的新特征集;S94:基于任务的新特征值,计算该任务分别与步骤5得到的各类中心任务ci的距离,i=1,2,…,L,该任务距离最本文档来自技高网
...

【技术保护点】
1.云平台任务最大资源使用率预测方法,其特征在于,包括如下步骤:S1、先对云平台任务资源使用状况历史数据集中缺失的数据进行填充,然后统计各任务在时间间隔为T内的平均资源使用率和最大资源使用率,其中,平均资源使用率包括平均CPU使用率、平均内存使用率,最大资源使用率包括最大CPU使用率、最大内存使用率;S2、使用n个连续计时周期,每个计时周期时长为T,基于n个计时周期内任务的最大资源使用率提取任务的加权最大资源使用率和最大资源使用率的公平性指数,其中,加权最大资源使用率包括加权最大CPU使用率、加权最大内存使用率,最大资源使用率的公平性指数包括最大CPU使用率的公平性指数、最大内存使用率的公平性指数;S3、将上述n个计时周期内的平均资源使用率和最大资源使用率、基于n个周期的加权最大资源使用率和最大资源使用率的公平性指数、任务的优先级作为样本的特征集Z’,并将每个特征在所有任务中的最大值保持在Mi中,i为特征的序号且Mi≠0,接着对所有任务的每个特征各自进行归一化处理,然后将其结果作为样本的初始数据集;S4、基于上述样本的特征集和初始数据集,使用稀疏自编码模型进一步提取任务特征,得到新的特征集Z={z1,z2,…,zf},结合各任务的这些特征值以及第(n+1)个计时周期内的最大CPU使用率或者最大内存使用率得到新的样本数据集D,其中,第(n+1)个计时周期内的最大CPU使用率或者最大内存使用率是样本的目标变量;S5、基于步骤S4中得到的样本数据集D,使用K‑medoids聚类算法将任务分成L类,得到L个样本数据子集,每一类别都有一个中心任务ci,i=1,2,…,L;S6、按照一定比例(b1:b2)将每一类样本数据子集分成训练集和测试集两个部分,其中b1、b2为正实数,且b1>b2;这样,就得到L个训练集和测试集的组合;S7、基于每一类样本数据子集中的训练集数据,使用改进的随机森林回归模型进行训练,得到L个已训练好的改进的随机森林回归模型;S8、基于对应的测试集数据,使用改进的平均绝对百分比误差对已训练好的改进的随机森林回归模型进行性能评价,改进的平均绝对百分比误差公式如下所示:...

【技术特征摘要】
1.云平台任务最大资源使用率预测方法,其特征在于,包括如下步骤:S1、先对云平台任务资源使用状况历史数据集中缺失的数据进行填充,然后统计各任务在时间间隔为T内的平均资源使用率和最大资源使用率,其中,平均资源使用率包括平均CPU使用率、平均内存使用率,最大资源使用率包括最大CPU使用率、最大内存使用率;S2、使用n个连续计时周期,每个计时周期时长为T,基于n个计时周期内任务的最大资源使用率提取任务的加权最大资源使用率和最大资源使用率的公平性指数,其中,加权最大资源使用率包括加权最大CPU使用率、加权最大内存使用率,最大资源使用率的公平性指数包括最大CPU使用率的公平性指数、最大内存使用率的公平性指数;S3、将上述n个计时周期内的平均资源使用率和最大资源使用率、基于n个周期的加权最大资源使用率和最大资源使用率的公平性指数、任务的优先级作为样本的特征集Z’,并将每个特征在所有任务中的最大值保持在Mi中,i为特征的序号且Mi≠0,接着对所有任务的每个特征各自进行归一化处理,然后将其结果作为样本的初始数据集;S4、基于上述样本的特征集和初始数据集,使用稀疏自编码模型进一步提取任务特征,得到新的特征集Z={z1,z2,…,zf},结合各任务的这些特征值以及第(n+1)个计时周期内的最大CPU使用率或者最大内存使用率得到新的样本数据集D,其中,第(n+1)个计时周期内的最大CPU使用率或者最大内存使用率是样本的目标变量;S5、基于步骤S4中得到的样本数据集D,使用K-medoids聚类算法将任务分成L类,得到L个样本数据子集,每一类别都有一个中心任务ci,i=1,2,…,L;S6、按照一定比例(b1:b2)将每一类样本数据子集分成训练集和测试集两个部分,其中b1、b2为正实数,且b1>b2;这样,就得到L个训练集和测试集的组合;S7、基于每一类样本数据子集中的训练集数据,使用改进的随机森林回归模型进行训练,得到L个已训练好的改进的随机森林回归模型;S8、基于对应的测试集数据,使用改进的平均绝对百分比误差对已训练好的改进的随机森林回归模型进行性能评价,改进的平均绝对百分比误差公式如下所示:其中,R表示测试样本数量,a1和a2是两个正实参数,且a1<a2,hi表示测试样本集中样本i的目标真实值,Hi表示测试样本集中样本i的目标预测值;S9、给定需预测的任务在最近连续时间段(n×T)内等距离监测点下的最大资源使用率和平均资源使用率,确定该任务的类别;S10、使用步骤9得到的任务类别对应的已经训练好的改进的随机森林回归模型,对任务进行预测。2.根据权利要求1所述的云平台任务最大资源使用率预测方法,其特征在于,步骤S1具体包括:S10:对于云平台任务资源使用状况历史数据集中的缺失数据,先进行填充;S11:计算时间段T内K个等距离监测点下的任务的平均CPU使用率的算术平均值,作为...

【专利技术属性】
技术研发人员:邓莉任雨林
申请(专利权)人:武汉科技大学
类型:发明
国别省市:湖北,42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1