一种负载预测方法及装置制造方法

文档序号:6515356阅读:127来源:国知局
一种负载预测方法及装置制造方法
【专利摘要】本发明提供一种负载预测方法及装置,包括:收集负载信息,根据所述负载信息形成负载序列,对所述负载序列进行建模,得到建模方程;对所述负载序列进行分析,得到不同时期同一时刻的预测偏大点数量和预测偏小点数量;根据所述预测偏大点数量和预测偏小点数量确定补偿阈值,并根据所述补偿阈值和所述建模方程计算负载预测值。本发明实施例通过提供一种负载预测方法及装置,通过收集负载信息形成的负载序列,对负载序列进行建模得到建模方程,通过对负载序列进行分析,得到不同时期同一时刻的预测偏大点数量和预测偏小点数量,进而得到补偿阈值,从而根据补偿阈值和建模方程计算得到负载预测值更加准确,效率高。
【专利说明】一种负载预测方法及装置
【技术领域】
[0001]本发明涉及负载预测技术,特别涉及一种负载预测方法及装置。
【背景技术】
[0002]随着虚拟化等关键技术的发展,云计算作为一种新兴的信息技术运用模式得到越来越广泛的关注和普及,越来越多的企业趋向于从云计算平台购买计算资源。其中,最为常见的就是提供Web服务的企业。由于受时间、地域、用户使用习惯等因素的影响,绝大部分的Web应用需求都是随着时间变化的。尽管用户可以根据应用需求的变化在一个较短的时间间隔内自由地增加或减少购买的计算资源。但是,如果企业只是在发现当前资源无法满足负载需求时再被动申请资源,那么Web应用服务质量必然会受到一定影响,用户体验的降低会导致用户的流失,进而会影响到企业的收入。
[0003]现有技术中的负载预测方法包括:
[0004]A、根据距离预测时间点;
[0005]B、在预设时间范围内,获取服务器的多个历史负载抽样值;
[0006]C、根据获取到的所述历史负载抽样值,调用立方卷积插值算法,计算出所述服务器在所述预测时间点上的负载值。
[0007]然而,现有技术的缺点是:利用立方卷积插值算法对服务器在预测时间点上的负载值进行计算,由于计算复杂度较高,导致计算效率太低。

【发明内容】

[0008](一)解决的技术问题
[0009]本发明解决的技术问题是:如何提供一种负载预测方法及装置,用于解决目前负载预测中计算效率低的问题。
[0010](二)技术方案
[0011]本发明实施例提供了一种负载预测方法,包括:
[0012]收集负载信息,根据所述负载信息形成负载序列,对所述负载序列进行建模,得到建模方程;
[0013]对所述负载序列进行分析,得到不同时期同一时刻的预测偏大点数量和预测偏小
点数量;
[0014]根据所述预测偏大点数量和预测偏小点数量确定补偿阈值,并根据所述补偿阈值和所述建模方程计算负载预测值。
[0015]优选地,对所述负载序列进行建模,得到的建模方程为:
[0016]ADPtXt+i=APtXt+1+fec (C (t+1), E (t+1));
[0017]fec (C (t),E (t)) =C (t) * IE (t) I *p ;
[0018]其中,APtXt+1为在t时刻预测t+1时刻的负载值;C(t)为t时刻的补偿阈值;E(t)为t时刻的误差期望;p为所述预测偏大点数量和所述预测偏小点数量的差值与总点数量之商。
[0019]优选地,对所述负载序列进行建模,得到建模方程,具体包括:
[0020]判断所述负载序列是否为平稳序列,如果不是,对所述负载序列进行差分计算,并继续判断得到的序列是否为平稳序列,直到判断为平稳序列,继续进行下一步;
[0021]根据所述负载序列计算模型阶数和模型参数,并利用所述模型阶数和所述模型参数进行计算,得到ARMA模型,利用该ARMA模型建立所述建模方程。
[0022]优选地,所述对所述负载序列进行分析,得到不同时期同一时刻的预测偏大点数量和预测偏小点数量,具体包括:
[0023]利用ARMA模型对所述负载序列进行分析,得到分析结果;
[0024]利用所述分析结果统计不同时期同一时刻的预测偏大点数量和预测偏小点数量。
[0025]优选地,所述根据所述预测偏大点数量和预测偏小点数量确定补偿阈值,具体包括:
[0026]计算所述预测偏大点数量和所述预测偏小点数量的差值与总点数量之商得到计算结果,将该计算结果与预设阈值进行比较,如果所述计算结果大于预设阈值,则进行负向补偿,如果所述计算结果小于预设阈值,则进行正向补偿;
[0027]根据负向补偿值和正向补偿值分别计算负向补偿和正向补偿时的误差期望值;
[0028]根据所述建模方程计算负载预测值。
[0029]本发明实施例还提供了一种负载预测装置,包括:
[0030]收集模块,用于收集负载信息,将所述负载信息传输给负载序列形成模块;
[0031]所述负载序列形成模块,用于根据所述负载信息形成负载序列,并将所述负载序列传输给建模模块和分析模块;
[0032]所述建模模块,用于对所述负载序列进行建模,得到建模方程,将所述建模方程传输给计算模块;
[0033]所述分析模块,用于对所述负载序列进行分析,得到不同时期同一时刻的预测偏大点数量和预测偏小点数量,将所述预测偏大点数量和所述预测偏小点数量传输给补偿阈值确定模块;
[0034]所述补偿阈值确定模块,用于根据所述预测偏大点数量和预测偏小点数量确定补偿阈值,将所述补偿阈值传输给所述计算模块;
[0035]所述计算模块,用于根据所述补偿阈值和所述建模方程计算负载预测值。
[0036]优选地,对所述负载序列进行建模,得到的建模方程为:
[0037]ADPtXt+1=APtXt+1+fec (C (t+1),E (t+1));
[0038]fec (C (t),E (t)) =C (t) * IE (t) I *p ;
[0039]其中,APtXt+1为在t时刻预测t+1时刻的负载值;C(t)为t时刻的补偿阈值;E(t)为t时刻的误差期望;p为所述预测偏大点数量和所述预测偏小点数量的差值与总点数量之商。
[0040]优选地,所述建模模块包括:
[0041]判断子模块,用于判断所述负载序列是否为平稳序列,如果判断结果为不是,则将判断结果传输给第一计算子模块,如果判断结果为是,则将判断结果传输给第二计算子模块;[0042]所述第一计算子模块,用于对所述负载序列进行差分计算,并将计算得到的序列传输给所述判断子模块继续进行判断,直到所述判断子模块判断得到的序列为平稳序列;
[0043]所述第二计算子模块,用于根据所述负载序列进行模型阶数和模型参数,并利用所述模型阶数和所述模型参数进行计算,得到ARMA模型,将ARMA模型传输给建模子模块;
[0044]所述建模子模块,用于利用ARMA模型建立所述建模方程。
[0045]优选地,
[0046]所述分析模块,还用于利用ARMA模型对所述负载序列进行分析,得到分析结果,将所述分析结果传输给统计模块;
[0047]所述装置还包括:统计模块,用于根据所述分析结果统计不同时期同一时刻的预测偏大点数量和预测偏小点数量。
[0048]优选地,所述补偿阈值确定模块包括:
[0049]第三计算子模块,用于计算所述预测偏大点数量和所述预测偏小点数量的差值与总点数量之商得到计算结果,将该计算结果传输给比较子模块;以及用于根据负向补偿值和正向补偿值分别计算负向补偿和正向补偿时的误差期望值,并根据所述建模方程计算负载预测值;
[0050]所述比较子模块,用于将所述计算结果与预设阈值进行比较,如果所述计算结果大于预设阈值,则进行负向补偿,如果所述计算结果小于预设阈值,则进行正向补偿,将负向补偿值或正向补偿值传输给所述第三计算子模块。
[0051](三)有益效果
[0052]本发明实施例通过提供一种负载预测方法及装置,通过收集负载信息形成的负载序列,对负载序列进行建模得到建模方程,通过对负载序列进行分析,得到不同时期同一时刻的预测偏大点数量和预测偏小点数量,进而得到补偿阈值,从而根据补偿阈值和建模方程计算得到负载预测值更加准确,效率高。
【专利附图】

【附图说明】
[0053]图1是本发明实施例一提供的方法流程图;
[0054]图2是本发明实施例二提供的方法流程图;
[0055]图3是本发明实施例三提供的装置结构示意图。
【具体实施方式】
[0056]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0057]实施例1:
[0058]本发明实施例提供了一种负载预测方法,该方法流程图如图1所示,包括:
[0059]步骤S1:收集负载信息,根据所述负载信息形成负载序列,对所述负载序列进行建模,得到建模方程;
[0060]步骤S2:对所述负载序列进行分析,得到不同时期同一时刻的预测偏大点数量和预测偏小点数量;
[0061]步骤S3:根据所述预测偏大点数量和预测偏小点数量确定补偿阈值,并根据所述补偿阈值和所述建模方程计算负载预测值。
[0062]本发明实施例通过提供一种负载预测方法及装置,通过收集负载信息形成的负载序列,对负载序列进行建模得到建模方程,通过对负载序列进行分析,得到不同时期同一时刻的预测偏大点数量和预测偏小点数量,进而得到补偿阈值,从而根据补偿阈值和建模方程计算得到负载预测值更加准确,效率高。
[0063]在本发明实施例中,通过利用平稳序列计算模型阶数和模型参数得到ARMA模型,并利用ARMA模型建立建模方程,从而保证了基本的预测准确度。
[0064]通过计算所述预测偏大点数量和所述预测偏小点数量的差值与总点数量之商得到计算结果,将该计算结果与预设阈值进行比较,如果所述计算结果大于预设阈值,则进行负向补偿,如果所述计算结果小于预设阈值,则进行正向补偿;根据建模方程计算出负载预测值,有效提高了预测精度,降低了误差。
[0065]实施例2
[0066]为了完善或补充上述实施例1,本发明实施例提供了一种负载预测方法,该方法流程图如图2所示,包括:
[0067]步骤201:确定时间窗口,收集Web负载信息,根据该负载信息形成负载序列;
[0068]其中,收集Web负载信息的过程为线下收集过程;
[0069]在本发明实施例中,Web负载信息为单位时间内用户的请求数量。
[0070]步骤202:对形成的负载序列进行建模,得到建模方程;
[0071 ] 其中,利用ARMA模型对负载序列进行建模;
[0072]首先形成ARMA模型的过程为:
[0073]2021:判断所述负载序列是否为平稳序列,如果不是,则跳转2022 ;如果是,则跳转 2023 ;
[0074]2022:对所述负载序列进行差分计算,并返回步骤2021 ;
[0075]2023:根据所述负载序列计算模型阶数和模型参数;
[0076]其中,利用ACF/PACF方法或者信息准则计算模型阶数;使用极大似然估计或者矩估计计算模型参数。
[0077]其中,对于模型阶数和模型参数进行周期性离线分析更新,为在线预测时,可以根据获取到的模型迅速计算出下一时刻负载值,速度快,效率高。
[0078]2024:利用所述模型阶数和所述模型参数进行计算,得到ARMA模型。
[0079]其次,利用该ARMA模型建立所述建模方程。
[0080]其中,建模方程式为:
[0081]ADPtXt+i=APtXt+1+fec (C (t+1), E (t+1));
[0082]fec (C (t),E (t)) =C (t) * IE (t) I *p ;
[0083]其中,APtXt+1为在t时刻预测t+1时刻的负载值;C(t)为t时刻的补偿阈值,正向补偿时,取值为1,负向补偿时,取值为-1,其他情况取值为O ;E(t)为t时刻的误差期望;p为所述预测偏大点数量和所述预测偏小点数量的差值与总点数量之商。
[0084]步骤203:利用ARMA模型对负载序列进行分析,得到分析结果;[0085]步骤204:在分析结果中,统计得到不同时期同一时刻的预测偏大点数量和预测
偏小点数量;
[0086]步骤205:计算所述预测偏大点数量和所述预测偏小点数量的差值与总点数量之商得到计算结果;
[0087]步骤206:将该计算结果与预设阈值进行比较,如果所述计算结果大于预设阈值,则进行负向补偿,如果所述计算结果小于预设阈值,则进行正向补偿;
[0088]步骤207:根据负向补偿值C(t)=_l和正向补偿值C(t)=l分别计算负向补偿和正向补偿时的误差期望值E (t),并将得到的数据代入上述建模方程进行计算,得到负载预测值。
[0089]其中,若该时刻为非补偿阈值C (t) =0,则预测误差期望E (t) =0。
[0090]例如,获取1998年世界杯网站用户访问信息,通过统计了其中五月一日至五月十日的数据(部分数据参见表1),前七天数据用于ARMA模型建立以及补偿阈值相关信息获取,后三天数据用于验证模型有效性。
[0091]表1
[0092]
【权利要求】
1.一种负载预测方法,其特征在于,包括: 收集负载信息,根据所述负载信息形成负载序列,对所述负载序列进行建模,得到建模方程; 对所述负载序列进行分析,得到不同时期同一时刻的预测偏大点数量和预测偏小点数量; 根据所述预测偏大点数量和预测偏小点数量确定补偿阈值,并根据所述补偿阈值和所述建模方程计算负载预测值。
2.如权利要求1所述的方法,其特征在于,对所述负载序列进行建模,得到的建模方程为:
ADPtXt+1=APtXt+1+fec (C (t+1),E (t+1));
fee (C (t),E (t)) =C (t) * IE (t) I *p ; 其中,APtXt+1为在t时刻预测t+1时刻的负载值;C(t)为t时刻的补偿阈值;E(t)为t时刻的误差期望;p为所述预测偏大点数量和所述预测偏小点数量的差值与总点数量之商。
3.如权利要求1~2中任一项所述的方法,其特征在于,对所述负载序列进行建模,得到建模方程,具体包括: 判断所述负载序列是否为平稳序列,如果不是,对所述负载序列进行差分计算,并继续判断得到的序列是否为平稳序列,直到判断为平稳序列,继续进行下一步; 根据所述负载序列计算模型阶数和模型参数,并利用所述模型阶数和所述模型参数进行计算,得到ARMA模型,利用该ARMA模型建立所述建模方程。
4.如权利要求3所述的方法,其特征在于,所述对所述负载序列进行分析,得到不同时期同一时刻的预测偏大点数量和预测偏小点数量,具体包括: 利用ARMA模型对所述负载序列进行分析,得到分析结果; 利用所述分析结果统计不同时期同一时刻的预测偏大点数量和预测偏小点数量。
5.如权利要求4所述的方法,其特征在于,所述根据所述预测偏大点数量和预测偏小点数量确定补偿阈值,具体包括: 计算所述预测偏大点数量和所述预测偏小点数量的差值与总点数量之商得到计算结果,将该计算结果与预设阈值进行比较,如果所述计算结果大于预设阈值,则进行负向补偿,如果所述计算结果小于预设阈值,则进行正向补偿; 根据负向补偿值和正向补偿值分别计算负向补偿和正向补偿时的误差期望值; 根据所述建模方程计算负载预测值。
6.一种负载预测装置,其特征在于,包括: 收集模块,用于收集负载信息,将所述负载信息传输给负载序列形成模块; 所述负载序列形成模块,用于根据所述负载信息形成负载序列,并将所述负载序列传输给建模模块和分析模块; 所述建模模块,用于对所述负载序列进行建模,得到建模方程,将所述建模方程传输给计算模块; 所述分析模块,用于对所述负载序列进行分析,得到不同时期同一时刻的预测偏大点数量和预测偏小点数量,将所述预测偏大点数量和所述预测偏小点数量传输给补偿阈值确定模块; 所述补偿阈值确定模块,用于根据所述预测偏大点数量和预测偏小点数量确定补偿阈值,将所述补偿阈值传输给所述计算模块; 所述计算模块,用于根据所述补偿阈值和所述建模方程计算负载预测值。
7.如权利要求6所述的装置,其特征在于,对所述负载序列进行建模,得到的建模方程为:
ADPtXt+1=APtXt+1+fec (C (t+1),E (t+1));
fee (C (t),E (t)) =C (t) * IE (t) I *p ; 其中,APtXt+1为在t时刻预测t+1时刻的负载值;C(t)为t时刻的补偿阈值;E(t)为t时刻的误差期望;p为所述预测偏大点数量和所述预测偏小点数量的差值与总点数量之商。
8.如权利要求6~7中任一项述的装置,其特征在于,所述建模模块包括: 判断子模块,用于判断所述负载序列是否为平稳序列,如果判断结果为不是,则将判断结果传输给第一计算子模块,如果判断结果为是,则将判断结果传输给第二计算子模块;所述第一计算子模块,用于对所述负载序列进行差分计算,并将计算得到的序列传输给所述判断子模块继续进行判断,直到所述判断子模块判断得到的序列为平稳序列; 所述第二计算子模块,用于根据所述负载序列进行模型阶数和模型参数,并利用所述模型阶数和所述模型参数进行计算,得到ARMA模型,将ARMA模型传输给建模子模块;· 所述建模子模块,用于利用ARMA模型建立所述建模方程。
9.如权利要求8所述的装置,其特征在于, 所述分析模块,还用于利用ARMA模型对所述负载序列进行分析,得到分析结果,将所述分析结果传输给统计模块; 所述装置还包括:统计模块,用于根据所述分析结果统计不同时期同一时刻的预测偏大点数量和预测偏小点数量。
10.如权利要求9所述的装置去,其特征在于,所述补偿阈值确定模块包括: 第三计算子模块,用于计算所述预测偏大点数量和所述预测偏小点数量的差值与总点数量之商得到计算结果,将该计算结果传输给比较子模块;以及用于根据负向补偿值和正向补偿值分别计算负向补偿和正向补偿时的误差期望值,并根据所述建模方程计算负载预测值; 所述比较子模块,用于将所述计算结果与预设阈值进行比较,如果所述计算结果大于预设阈值,则进行负向补偿,如果所述计算结果小于预设阈值,则进行正向补偿,将负向补偿值或正向补偿值传输给所述第三计算子模块。
【文档编号】G06F9/50GK103530190SQ201310479084
【公开日】2014年1月22日 申请日期:2013年10月14日 优先权日:2013年10月14日
【发明者】王智立, 王颖, 李升明, 孟洛明, 杨杨, 熊翱, 陈兴渝 申请人:北京邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1