CN109005052A - 网络任务预测方法和装置 - Google Patents
网络任务预测方法和装置 Download PDFInfo
- Publication number
- CN109005052A CN109005052A CN201810726207.5A CN201810726207A CN109005052A CN 109005052 A CN109005052 A CN 109005052A CN 201810726207 A CN201810726207 A CN 201810726207A CN 109005052 A CN109005052 A CN 109005052A
- Authority
- CN
- China
- Prior art keywords
- task
- cluster
- tasks
- time
- predicted
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 69
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 34
- 238000012545 processing Methods 0.000 claims abstract description 9
- 230000001133 acceleration Effects 0.000 claims description 33
- 238000004364 calculation method Methods 0.000 claims description 21
- 230000003247 decreasing effect Effects 0.000 claims description 4
- 238000003064 k means clustering Methods 0.000 claims description 4
- 238000013468 resource allocation Methods 0.000 abstract description 8
- 238000013213 extrapolation Methods 0.000 abstract description 5
- 239000011159 matrix material Substances 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000007704 transition Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 230000003044 adaptive effect Effects 0.000 description 4
- 239000013598 vector Substances 0.000 description 4
- 238000002474 experimental method Methods 0.000 description 3
- 241001465754 Metazoa Species 0.000 description 2
- 238000005265 energy consumption Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000013589 supplement Substances 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 241000283073 Equus caballus Species 0.000 description 1
- 206010033799 Paralysis Diseases 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/147—Network analysis or design for predicting network behaviour
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/63—Routing a service request depending on the request content or context
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种网络任务预测方法和装置,其中的方法包括:通过任务分类器对请求处理的任务进行分组处理,生成至少一个任务集群;获得单位时间内任务群集中增加的任务数量,基于增加的任务数量判断此任务群集是否进入突发状态;基于判断结果选取对应的预测算法预测此任务群集中的未来任务到达的预测值,其中,预测值包括:未来任务的到达预测时间和到达预测数量。本发明的方法和装置,将正常情况下的移动平均预测方法与突发情况下的趋势外推预测方法相结合,预测即将到来的工作量爆发,及时发现正常情况下的突发情况,能够自适应资源调配方面的有效工作流量突发。
Description
技术领域
本发明涉及云计算技术领域,尤其涉及一种网络任务预测方法和装置。
背景技术
云计算已经成为近几十年来计算机科学中最热门的话题之一,随着虚拟化推进云计算 现在允许按需网络访问共享的可配置计算资源池,从而将这些快速地提供给互联网上的客 户端,作为不再限于传统的基础设施即服务(IaaS)的新形式的服务,平台即服务(PaaS) 或软件即服务(SaaS),而数据即服务(DaaS),分析即服务(AaaS)等。
在现代计算云中,工作负载突发越来越频繁,难以预测。这可能是因为网民需求的不 断增长和社交网络的普及,公众的兴趣可以很容易的把握,从而在相当短的时间内引起网 络用户的大量请求,之后可能出现网络流量瘫痪。例如,当一个名人发布令人吃惊的推特 或者一些在线零售商在某个时候推出折扣时,可能会给相关网站带来突然的工作量。如果 计算资源没有得到适当及时的重新配置,网站或应用程序可能会崩溃,造成用户的不满甚 至财务损失,这是云提供商或客户和客户所不希望的。因此,需要一种新的网络任务预测 的技术方案。
发明内容
有鉴于此,本发明要解决的一个技术问题是提供一种网络任务预测方法和装置。
根据本发明的一个方面,提供一种网络任务预测方法,包括:通过任务分类器对请求 处理的任务进行分组处理,生成至少一个任务集群;获得单位时间内任务群集中增加的任务数量,基于所述增加的任务数量判断此任务群集是否进入突发状态;基于判断结果选取对应的预测算法预测此任务群集中的未来任务到达的预测值,其中,所述预测值包括:未来任务的到达预测时间和到达预测数量。
根据本发明的另一方面,提供一种网络任务预测装置,包括:任务分组模块,用于通 过任务分类器对请求处理的任务进行分组处理,生成至少一个任务集群;趋势预测模块, 用于获得单位时间内任务群集中增加的任务数量,基于所述增加的任务数量判断此任务群 集是否进入突发状态;基于判断结果选取对应的预测算法预测此任务群集中的未来任务到 达的预测值,其中,所述预测值包括:未来任务的到达预测时间和到达预测数量。
本发明的网络任务预测方法和装置,通过任务分类器对任务进行分组处理,将任务分 配给与其相似度最高的任务群集;预测多个任务群集中的未来任务到达的预测值,将正常 情况下的移动平均预测方法与突发情况下的趋势外推预测方法相结合,预测即将到来的工 作量爆发,及时发现正常情况下的突发情况,能够自适应资源调配方面的有效工作流量突 发。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技 术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明 的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以 根据这些附图获得其他的附图。
图1为本发明的网络任务预测方法的一个实施例的流程示意图;
图2A-2F为本发明的网络任务预测方法的一个实施例中的在分组时距离计算的示意 图;
图3为本发明的网络任务预测方法的一个实施例中的高斯曲线的模拟工作负荷尖峰 示意图;
图4A-4D为本发明的网络任务预测方法的一个实施例中的四组任务的不同预测结果 示意图;
图5A为本发明的网络任务预测装置的一个实施例的模块示意图;图5B为趋势预测模 块的模块示意图;
图6为本发明的网络任务预测装置的一个实施例在实际场景中的模块示意图;
图7为本发明的网络任务预测装置的另一个实施例中的模块示意图;
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说 明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明 的范围。
图1为本发明的网络任务预测方法的一个实施例的流程示意图,如图1所示:
步骤101,通过任务分类器对请求处理的任务进行分组处理,生成至少一个任务集群。
步骤102,获得单位时间内任务群集中增加的任务数量,基于增加的任务数量判断此 任务群集是否进入突发状态。
步骤103,基于判断结果选取对应的预测算法预测此任务群集中的未来任务到达的预 测值,其中,预测值包括:未来任务的到达预测时间和到达预测数量。
在单位时间内,如果确定任务群集中任务数量的增加加速度为连续递增,或者,任务 数量的增加加速度的值超过预设的加速度阈值的次数超过预设的次数阈值,则确定任务群 集进入了突发状态。在确定进入突发状态后,如果确定在单位时间内,任务群集中任务数 量的增加加速度为连续减少,或者,任务数量的增加加速度的值低于加速度阈值的次数超 过次数阈值,则确定回到常规状态。
在一个实施例中,接收到请求处理的任务,通过任务分类器对任务进行分组处理,将 任务分配给与其相似度最高的任务群集。任务包括服务请求任务、计算请求任务等。任务 可以为终端用户提交到数据中心的请求,可以是一项大型的科学计算,也可以是网页访问 操作,也可以是数据读取、数据分析、数据处理、数据存储等常规操作等。基于预设的预测算法分别预测多个任务群集中的未来任务到达的预测值,预测值包括未来任务的到达预测时间和到达预测数量。预测值的到达预测时间和到达预测数量可以使用坐标系中的一条曲线表示,曲线的斜率可以表示为工作量到达率。可以在正常场景和突发场景两个不同的特征场景下分别连续预测未来任务的到达预测时间和到达预测数量。根据预测值对物理机PM和虚拟机VM进行相应地重新部署,以使在未来任务的任务量峰值到来时具有足够的处理资源。当到达未来任务的到达预测时间时,基于实际接收到的任务数量与未来任务的到达预测数量的差值,重新调整任务分类器以及预测算法的参数。
上述实施例的网络任务预测方法,能够采用自适应预测,可以在正常场景和突发场景 下分别连续预测即将到来的工作量,物理机PM和虚拟机VM将根据其数量和预计到达时间 相应地重新部署。
在一个实施例中,通过任务分类器对任务进行分组处理可以有多种方法。例如,选取 任务的历史数据,采用k-means聚类方法对历史数据进行预分组,得到多个任务群集,并获得每个任务群集的群集特征属性值。接收到任务时,获取任务的特征属性值,群集特征属性值与特征属性值包括到达时间、计算长度、截止时间要求、所需内存大小等。任务分 类器分别计算特征属性值与多个群集特征属性值之间的马氏距离,将此任务分配给与最小的马氏距离相对应的任务群集。任务的工作量爆发通常与突然关注某些热门话题或某些特殊事件有关,可以推断在这段时间内任务的属性与正常情况下的属性不同,因此,对于不同的任务,可以有到达率的特征曲线和其他特征如CPU,记忆,运行时间等。
进行分组处理的簇数可以预设在2至5的范围内,以使分组的结果能够代表来自正常 场景或突发场景的任务的可区分性状。需要选择较宽的历史数据作为训练数据来获得每个 任务群集的特征,它们将作为分类的标准,每个任务群集的构成随着时间的变化而变化, 同时分组的参数也会根据整体的表现进行调整和重新设置,在实现任务分组时,首先要考 虑一系列合适的任务属性。到达任务最有影响的因素是其给定的计算长度和所需的内存大 小以及预期的运行时间,因为它们决定了后续的工作量分配,最终决定了总体性能的最终 质量。对于任务集T中的每个给定的任务ti,可以用ti=(ai,li,di,mi)来建模,其中ai,li,di和mi分别表示到达时间,计算长度,期望的期限和内存大小的任务ti,采用低 复杂度的聚类方法k-means,以较粗糙的尺度对即将到来的任务或请求进行预先分组。选 取一定时间内的历史数据进行采用本文提出的聚类方法进行分组,将得到各组的特征提取 出来,作为后续实时分类时的任务分类器的筛选条件。
将任务划分为几个特征组(任务集群),将一个到达的任务分配给相似度得分最高的 任务集群。通常,任务和任务集群之间的相似度分数是通过任务和上面列出的属性的向量 空间中的集群的质心之间的欧几里得距离来计算的。但是,对于现实世界中的任务来说, 这些属性通常是相互关联的,忽略属性之间的关系可能会在一定程度上影响分组结果的准 确性。在本发明中使用Mahalanobis距离来替代计算相似性分数。马氏距离通过两个相同 分布的向量与整体之间的不相似度量,来考虑任务各个属性之间的整体聚类和关系协方差 矩阵。此外,马氏距离是尺度不变的,或者与测量尺度无关。传统的相似度计算使用欧式 距离计算,如公式1-1所示:
其中,即任务i和任务j两个个体任务之间的欧氏距离,其中li,di, mi等均为任务i的属性/维度,分别代表任务长度,截止时间要求和所需内存大小,lj,dj, mj等代表的含义类似。公式1代表了欧式距离的计算方式。
使用马氏距离代替欧式距离,如公式1-2所示,消除了三个选择属性之间的相关性, 揭示了每一组任务的鲜明特征。公式1-2代表了马式距离的计算方式:
其中,即任务i和任务j两个个体任务之间的马氏距离,其中是一个包含li,di,mi的三元向量,代表相似含义。∑-1代表了所选历史数据的协方差矩阵 的逆矩阵。
公式1-3和公式1-4都为协方差矩阵∑进行了补充说明。
∑ij=cov(ti,tj)=E[(ti-μj)(tj-μj)] (1-3);
其中,μ是所有任务的平均值,Σij是两个任务之间的协方差值,协方差矩阵中的 σ是每两个任务的一组竞争值,代表整体偏差。∑代表了所选历史数据的协方差矩阵,∑ij则代表该协方差矩阵中的每一个项。公式cov()为两个向量之间的协方差计算公式,公式E()为期望值计算公式。
首先使用包含多个工作负荷尖峰数据的历史数据采样来计算代表性的协方差矩阵, 然后实时(定期)对其进行更新。使用上述修改的聚类方法对任务进行分组,获得每个聚 类的特征。在测试中,使用一种称为k-means++的技术来选择合适的初始聚类中心来加速 后续收敛速度。图2A-2F比较了使用不同的相似性计算方法,包括它们的计算长度,所需的期限和需要的存储器大小的分组中的任务的特征。图2A、图2C和图2E左侧显示欧几 里得距离计算的结果,图2B、图2D和图2F在右边那些来自Malahannobis的距离。以图 2A和图2B为例,每个散射点代表在x轴上映射的某个时间点的一个任务,其计算长度在 左边的主y轴;次y轴表示任务在同一时间点计数,在底部呈黑色连续。很明显,突发情 况下的任务大多是用红色标记的,而与其他人则是规范的。使用马氏距离的方法将标记为 “突发”的任务比使用欧几里德距离的方法更多,这在某种程度上延长了突发情况。也就 是说,使用Malahanobis距离的方法对工作量峰值的到达比欧几里得更为敏感。通过图 2C和图2D,图2E和图2F的比较,可以推断出类似的含义。欧几里得似乎更倾向于缩小 “突发性工作量”的范围,将模糊区域分类为“标准”范畴,而马哈拉诺比斯似乎强调两 个属性之间的线性关系,从而扩大了“突发性工作量”的检测范围。这样,马哈拉诺比斯 更有能力预测爆发。
在一个实施例中,对于正常情况,工作负荷量在平均水平上波动,没有任何尖锐的增加,这适合于时间序列模型预测。然而,对于突发情况来说,在任务或请求中会出现更 频繁和尖锐的上升和下降,通常是在相当短的时间内以负载呈指数增长的形式,然后很快 恢复到原来的水平。当尝试预测爆发时,移动平均法的缺点,滞后问题将被大大放大,因 此,采用趋势外推预测方法。趋势外推预测方法预测的不是未来某一点的价值,而是趋势。 选择并测试了几个常用的数学函数和曲线来模拟工作负荷尖峰,包括指数函数,Gompertz 曲线和高斯曲线等,通过试验结果可知,高斯曲线是最适合工作负载突发的曲线,如图3 所示。在一个实施例中,基于预设的预测算法分别预测多个任务群集中的未来任务到达的 预测值可以有多种方法。例如,基于单位时间内任务群集中增加的任务数量判断是否进入 突发状态,如果是,则采用突发预测算法预测此任务群集中的未来任务到达的预测值,如 果否,则采用常规预测算法预测此任务群集中的未来任务到达的预测值;其中,在单位时 间内,如果任务群集中任务数量的增加加速度为连续递增,或者,任务数量的增加加速度 的值超过预设的加速度阈值的次数超过预设的次数阈值,则确定进入了突发状态;在确定 进入突发状态后,如果确定在单位时间内,任务群集中任务数量的增加加速度为连续减少,或者,任务数量的增加加速度的值低于加速度阈值的次数超过次数阈值,则缺定回到常规状态。
采用突发预测算法预测此任务群集中的未来任务到达的预测值为:
s的含义是指预测的窗口时长。即此时为t时刻,该公式1-5可以预测的s个单位 时长之后的值,即t+s时刻的预测值et+s。
采用常规预测算法预测此任务群集中的未来任务到达的预测值为:
其中,s的含义是指预测的窗口时长。即此时为t时刻,通过公式可以预测s个单 位时长之后的值,即t+s时刻的预测值。et+s为根据t时刻的任务到达数量对t+s时刻的任 务达到数量的预测值,b1,b2,b3是预测参数,exp()为以自然底数e为底的指数函数,window为设定的影响预测值的历史数据个数,Win为第in个任务的历史数据对预测值的 影响权重,i指的是在t时刻往回拨in个时间点所对应的时间长度。可以设定wi=(window -i)^n,其中n为大于1的自然数,以确保离该时刻越近的历史时刻的数据对对预测值得 影响力越大。ct-i指t-i时刻的任务到达数量,该值是用来计算t+s时刻的预测值的。
对于混合预测方法设置一个加速度阈值,作为在正常情况和突发情况之间转换条件 下转换预测模型的切换。在预先设定的短时间窗内去除明显的异常值并平滑到达的线路之 后,观察到当突发可能发生时,每单位时间任务数量的增加会加速。因此,一方面,一旦 加速度连续数次超过阈值,预测方法就会将其作为近期爆发的信号;另一方面,低于阈值 或不满足上述条件的加速度将被标记为正常水平的波动,然后预测模式将迅速移回到移动 平均。反之亦然。
在一个实施例中,将两场景预测方法分别应用于分组后的每个任务集群。首先,任务被安排在分组池中,任务分类器根据它们的属性和集群之间的相似性分数来标记和分配以下任务。任务分类器以聚类预分组的各组特征来作为依据,一个新任务到达之后,读取其各属性值,并与所有任务集群的属性特征值(该任务集群的所有个体特征平均值)进行距离计算,随后该任务将被分到距离值最小的那个组别,同时更新该组的属性特征值。在每个时间间隔,将不同的任务群集发送到预测池,以预测每个特定任务群的到达率的趋势。最后,当实际时间达到之前预测的时间点时,将实际值与预测值之间的差值打包为反馈,重新调整预测方法的参数。根据历史单位时间的到达率判断此刻的任务状态是“突发”还是“常规”,并使用相应的方法进行预测。一段时间后,部分先前预测的任务到达率可以 和实际的任务到达率进行比对,差值作为反馈信息改进预测方法。例如,如果一段时间内75%的预测值都低于实际值,则将这段时间的预测与实际的差值占预测值的占比加到后续的预测的预测值上,进行调整。图4A-4D显示了四组任务的不同预测结果。在突发情况下 主要检测到任务群集的最佳阈值范围是每分钟增加0.32个计数。关于其他三个群体,几 乎没有检测到突出尖刺,如图4B,图4C和图4D所示,预先分组的步骤是将特征“突发 性任务”与常态分开,此外,“突发任务”也具有特征到达曲线,如果相应地设置了适当的 阈值,则预测方法将预测更加适合的预测曲线。在一个实施例中,根据预测值以及任务集 群的特征为任务群集中新增的任务分配对应的PM或VM,特征包括:内存要求、计算长度 等。对于常规状态,PM的预留空间为最小预留空间阈值,当出现突发状态时,提高PM的 预留空间和/或开启新PM并留出预留空间,用以满足工作量的突发性地增大。在进行PM 或VM的分配时满足的约束条件包括:
和
fj max指第j台PM的最大CPU值,fj,k指第j台PM上的第k台虚拟机的CPU值;mj指 第j台PM的最大内存值,mj,k指第j台PM上的第k台虚拟机的内存值,N为在第j台PM 上的虚拟机的数量。
当任务被标记为突发状况时,按预定的顺序依次对多个虚拟机进行搜索,判断此虚拟 机分配了此任务后是否满足约束条件,如果是,则将此任务分配给此虚拟机,如果否,则 继续搜索下一个虚拟机。如果从常规状态转换到突发状态时,提高了PM的预留空间,判断分配给此PM的任务在任一运行时刻的CPU占用量或内存占用量是否超过设定的阈值, 如果是,则从CPU占用量最小或内存的占用量最小的任务开始,将分配给此PM的任务转 移到其它开启的PM或转移到新开启的PM,直到分配给此PM的任务在任一运行时刻的CPU 占用量和内存占用量都未超过设定的阈值。
在一个实施例中,在高峰工作量下进行配置是保证任务完成的时间优先保证,但虚拟 化的弹性优势就会受到破坏,并可能导致资源利用率低下。资源调配应分别考虑正常工作 负载场景和突发工作负载场景,考虑了每个单个集群的特点,同时调整相应的工作负载大 小实时调整资源分配,最大限度地提高整个系统的利用率。一方面,充分利用先前集群的 特征以及PM的异质性,即根据其对应集群的区分特征来分配不同集群的任务,例如优先 考虑对占用内存要求较高的任务对较高配置的PM和较低计算长度的任务给占用相对较多 的PM,以使资源可用性最好。另一方面,预约策略在很大程度上取决于预测结果,因为预先安排好所有的PM已经完全占用了,每当物理或虚拟机需要额外的预留时,流量工作 量突然激增。预留量取决于正常工作量和突发工作量之间的差值。对于正常情况,每个 PM的预留空间被压缩到条件最小值。如果出现突发状态,系统将被重新部署,打开足够 数量的新PM,并留出足够的预留空间来应对工作量的飙升。采用这种保留策略,以实现 资源利用率,运行稳定性和高效性的平衡。
例如,首先针对m个物理主机或PM组成的虚拟化云。每个PM的特征是hj=(rj,oj,fj), 其中rj是第j个PMhj的内存大小,fj是第j个PM hj的CPU值,oj是第j个主机;然后主 机hj上设置VM。VM被建模为vmj,k=(fj,k,rj,k),其中fj,k和rj,k分别是vmj,k所需的CPU 性能和内存。预留策略优先考虑在同一个PM上的虚拟机总数不能违反PM的容量的情况下, 完成任务的比例。这样的约束被形式化为:
fj max指第j台主机的最大CPU值,fj,k指第j台主机上的第k台虚拟机的CPU值;公 式1-7指分配在主机上的所有虚拟机的CPU值的总和不能大过该主机的CPU最大值。mj指 第j台主机的最大内存值,mj,k指第j台主机上的第k台虚拟机的内存值;公式1-8指分 配在主机上的所有虚拟机的内存值的总和不能大过该主机的内存最大值。在一个实施例 中,在满足约束的情况下,针对该保留策略的所提出的启发式算法,算法1的伪代码如下 所示:
由上可知,在算法1中:1、每个时刻都对该时刻新到达的任务进行分组,并根据该时刻以及往回拨window个时刻的到达率来预测s时刻后的任务到达率;2、根据预测值来 判断是否任务状况有变化,是“突发”还是“常规”;3、如果任务状况有变化,则同时改 变预测的方法和预留资源的方法;4、进行资源分配,将任务分到各个主机的虚拟中去; 在一段时间之后,更新历史数据,重新进行一次聚类,更新协方差矩阵。算法1是整个方 法的总体流程展示。在算法2中给出的函数重新部署将尝试移动可用资源来处理即将到来 的突发,函数资源分配,算法2的伪代码如下所示:
由上可知,在算法2中:1、如果环境从“常规”状况转换到“突发”状况,则开始 对每个虚拟机进行检查;2、因为转换到“突发”状况,所以主机的预留值提高,原先符 合约束条件的一些任务需要转移到其他机器上去;3、找到工作占用CPU或内存超过阈值 的机子,从占用量最小的任务开始转移,首先考虑转移到已经开启并没有超出资源预留预 计的机子上,如果不存在这样的机子,则新开机子。算法2是对算法1的其中一个步骤进 行补充,主要解决了,状态转换时,主机群的资源重调问题。算法3用于根据其特征属性 将即将到来的任务安排到合适的VM中,算法3的伪代码如下所示:
由上可知,在算法2中:1、如果该任务被标记为“突发”状况,则开始对每个虚拟 机进行搜索将其分配到合适的机子上去;2、如果算上该任务,机子的CPU或内存均没有 超出阈值,则将该任务分配到此台虚拟机上。算法3是对算法1的其中一个步骤进行补充, 主要解决了,状态转换时任务分配的问题。在一个实施例中,从三个方面考虑衡量系统性 能的指标,即保证率,资源利用率和总能耗:
其中,公式1-9是指任务完成率(GR,Guarantee Ratio),即能够按时完成的任务展总任务的百分比。其中xi,j,k表示任务ti在第j个PM的第k个VM中及时完成情况,n 表示总任务数。公式1-10是指资源利用率(RU,Resource Utilization),即完成的任 务总长度占开启的主机的资源量总和。其中yi,j,k表示任务ti在第j个PM的第k个VM中 完成情况,n表示总任务数。公式1-11表示一台开启的主机的功耗和其运行的频率的三 次方成正比关系。公式1-12表示一台开启的主机从st时刻到et时刻的总功耗计算公式。
其中,xi,j,k和yi,j,k分别表示已签名的任务ti是否已经在第j个PM的第k个VM中 完成和完成,wtj表示PM hj的活动时间,cj t∈{1,0}表示hj在时刻t是否有效,当hj有效 时为1,否则为0。式1-9中的担保比例代表任务完成率,是主要目标。xi,j,k意味着在截 止日期之前完成任务,而式1-10中完成的任务意味着完成任务而不管其运行时间。yi,j, k表示所有PM的所有任务到达的总长度与运行的CPU的总活动时间的比率。总能耗代表开 机PM整体的总体功耗,基本上由CPU的使用量来计算。功耗可以分为两种状态。一个闲 置,另一个活动。对于PM hj的CPU使用情况,其动态有功功耗pj active可近似地描述为式1 -11。设si为怠速PM(例如50%和60%)的功率消耗部分,pj max为当主机hj被充分利用时 的最大功耗。hj从时间st到时间et的总能量消耗tecj可近似为式1-12。
对本发明的网络任务预测方法和其他现有方法进行定量比较,实验中使用的数据集来 自Google cloud traces和World of Warcraft数据集,代表了一个视频游戏服务。“魔 兽世界”数据集是“魔兽世界”在线游戏的踪迹,包含了2006年1月至2009年1月间的1107天的记录,从中提取了几小时的实验记录。
在实验中,假设系统提供了五种不同类型的虚拟机,假设每个配置的虚拟机数量是无 限的。将实验分为两部分。第一部分通过对实际工作量统计进行预测,显示了本发明的自 适应云资源调配方法中预测方法的准确性,相对误差小于5%。第二部分展示了所提出的 本发明的自适应云资源调配方法,并且我们用包括VM时间和可用性的度量来评估本发明 的自适应云资源调配方法。结果表明,本发明的自适应云资源调配方法在突发情况下具有 良好的性能。
本发明的网络任务预测方法,可以将正常情况下的移动平均预测方法与突发情况下的 趋势外推预测方法相结合,预测即将到来的工作量爆发;即将到来的任务在集群中表征, 其属性包括到达率是单独预测的,任务的趋势预测被转化为爆发的信号,从而改变了预留 策略。
在一个实施例中,如图5A、5B所示,本发明提供一种网络任务预测装置50,包括:任务分组模块51和趋势预测模块52。任务分组模块51通过任务分类器对请求处理的任 务进行分组处理,生成至少一个任务集群。趋势预测模块52获得单位时间内任务群集中 增加的任务数量,基于增加的任务数量判断此任务群集是否进入突发状态。趋势预测模块 52基于判断结果选取对应的预测算法预测此任务群集中的未来任务到达的预测值,其中, 预测值包括:未来任务的到达预测时间和到达预测数量。
任务分组模块51选取任务的历史数据,采用k-means聚类方法对历史数据进行预分 组,得到多个任务群集,并获得每个任务群集的群集特征属性值;任务分组模块51接收到任务时,获取任务的特征属性值;通过通过任务分类器分别计算特征属性值与多个群集特征属性值之间的马氏距离,任务分组模块51将此任务分配给与最小的马氏距离相对应的任务群集;其中,任务包括:服务请求任务、计算请求任务。
趋势预测模块52包括:状态判断单元521和预测值计算单元522。状态判断单元521在单位时间内,如果确定任务群集中任务数量的增加加速度为连续递增,或者,任务数量的增加加速度的值超过预设的加速度阈值的次数超过预设的次数阈值,则确定任务群集进入了突发状态。
状态判断单元521在确定进入突发状态后,如果确定在单位时间内,任务群集中任务 数量的增加加速度为连续减少,或者,任务数量的增加加速度的值低于加速度阈值的次数 超过次数阈值,则确定回到常规状态。
预测值计算单元522如果判断此任务群集进入突发状态,则采用突发预测算法预测此 任务群集中的未来任务到达的预测值为:
预测值计算单元522如果判断此任务群集进入突发状态,则采用常规预测算法预测此 任务群集中的未来任务到达的预测值为:
其中,s为预测的窗口时长,此时为t时刻,et+s为根据t时刻的任务到达数量对t+s时刻的任务达到数量的预测值,b1,b2,b3是预测参数,exp()为以自然底数e为底的指数 函数,window为设定的影响预测值的历史数据个数,Win为第in个任务的历史数据对预 测值的影响权重,i指的是在t时刻往回拨in个时间点所对应的时间长度,ct-i指t-i时 刻的任务到达数量。
如图6所示,资源保留模块根据预测值以及任务集群的特征为任务群集中新增的任务 分配对应的PM或VM,特征包括:内存要求、计算长度等。资源保留模块对于常规状态,PM的预留空间为最小预留空间阈值,当出现突发状态时,提高PM的预留空间和/或开启 新PM并留出预留空间,用以满足工作量的突发性地增大;在进行PM或VM的分配时满足 的约束条件包括:
和
fj max指第j台PM的最大CPU值,fj,k指第j台PM上的第k台虚拟机的CPU值;mj指 第j台PM的最大内存值,mj,k指第j台PM上的第k台虚拟机的内存值,N为在第j台PM 上的虚拟机的数量。
资源保留模块当任务被标记为突发状况时,按预定的顺序依次对多个虚拟机进行搜 索,判断此虚拟机分配了此任务后是否满足约束条件;如果是,则将此任务分配给此虚拟 机,如果否,则继续搜索下一个虚拟机。如果从常规状态转换到突发状态时,提高了PM的预留空间,资源保留模块53判断分配给此PM的任务在任一运行时刻的CPU占用量或内 存占用量是否超过设定的阈值,如果是,则从CPU占用量最小或内存的占用量最小的任务 开始,将分配给此PM的任务转移到其它开启的PM或转移到新开启的PM,直到分配给此 PM的任务在任一运行时刻的CPU占用量和内存占用量都未超过设定的阈值。
在一个实施例中,如图7所示,提供一种网络任务预测装置,该装置可包括存储器71和处理器72,存储器71用于存储指令,处理器72耦合到存储器71,处理器72被配 置为基于存储器71存储的指令执行实现上述的网络任务预测方法。
存储器71可以为高速RAM存储器、非易失性存储器(non-volatile memory)等,存储器71也可以是存储器阵列。存储器71还可能被分块,并且块可按一定的规则组合成 虚拟卷。处理器72可以为中央处理器CPU,或专用集成电路ASIC(Application SpecificIntegrated Circuit),或者是被配置成实施本发明的网络任务预测方法的一个或多个集成电路。
在一个实施例中,本发明提供一种计算机可读存储介质,计算机可读存储介质存储 有计算机指令,指令被处理器执行时实现如上任一个实施例中的网络任务预测方法。
可能以许多方式来实现本发明的方法和系统。例如,可通过软件、硬件、固件或 者软件、硬件、固件的任何组合来实现本发明的方法和系统。用于方法的步骤的上述 顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其 它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的 程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆 盖存储用于执行根据本发明的方法的程序的记录介质。本发明的描述是为了示例和描 述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对 于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理 和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有 各种修改的各种实施例。
Claims (10)
1.一种网络任务预测方法,其特征在于,包括:
通过任务分类器对请求处理的任务进行分组处理,生成至少一个任务集群;
获得单位时间内任务群集中增加的任务数量,基于所述增加的任务数量判断此任务群集是否进入突发状态;
基于判断结果选取对应的预测算法预测此任务群集中的未来任务到达的预测值,其中,所述预测值包括:未来任务的到达预测时间和到达预测数量。
2.如权利要求1所述的方法,其特征在于,所述基于所述增加的任务数量判断此任务群集是否进入突发状态包括:
在单位时间内,如果确定任务群集中任务数量的增加加速度为连续递增,或者,所述任务数量的增加加速度的值超过预设的加速度阈值的次数超过预设的次数阈值,则确定任务群集进入了突发状态。
3.如权利要求2所述的方法,其特征在于,还包括:
在确定进入突发状态后,如果确定在单位时间内,任务群集中任务数量的增加加速度为连续减少,或者,所述任务数量的增加加速度的值低于所述加速度阈值的次数超过所述次数阈值,则确定回到常规状态。
4.如权利要求1所述的方法,其特征在于,所述基于判断结果选取对应的预测算法分别预测此任务群集中的未来任务到达的预测值包括:
如果判断此任务群集进入突发状态,则采用突发预测算法预测此任务群集中的未来任务到达的预测值为:
如果判断此任务群集进入突发状态,则采用常规预测算法预测此任务群集中的未来任务到达的预测值为:
其中,s为预测的窗口时长,此时为t时刻,et+s为根据t时刻的任务到达数量对t+s时刻的任务达到数量的预测值,b1,b2,b3是预测参数,exp()为以自然底数e为底的指数函数,window为设定的影响预测值的历史数据个数,Win为第in个任务的历史数据对预测值的影响权重,i指的是在t时刻往回拨in个时间点所对应的时间长度,ct-i指t-i时刻的任务到达数量。
5.如权利要求1所述的方法,其特征在于,还包括:
选取所述任务的历史数据,采用k-means聚类方法对所述历史数据进行预分组,得到所述多个任务群集,并获得每个任务群集的群集特征属性值;
接收到所述任务时,获取所述任务的特征属性值;
通过任务分类器分别计算所述特征属性值与多个所述群集特征属性值之间的马氏距离,将此任务分配给与最小的马氏距离相对应的任务群集;
其中,所述任务包括:服务请求任务、计算请求任务。
6.一种网络任务预测装置,其特征在于,包括:
任务分组模块,用于通过任务分类器对请求处理的任务进行分组处理,生成至少一个任务集群;
趋势预测模块,用于获得单位时间内任务群集中增加的任务数量,基于所述增加的任务数量判断此任务群集是否进入突发状态;基于判断结果选取对应的预测算法预测此任务群集中的未来任务到达的预测值,其中,所述预测值包括:未来任务的到达预测时间和到达预测数量。
7.如权利要求6所述的装置,其特征在于,
所述趋势预测模块,包括:状态判断单元,用于在单位时间内,如果确定任务群集中任务数量的增加加速度为连续递增,或者,所述任务数量的增加加速度的值超过预设的加速度阈值的次数超过预设的次数阈值,则确定任务群集进入了突发状态。
8.如权利要求7所述的装置,其特征在于,
所述状态判断单元,用于在确定进入突发状态后,如果确定在单位时间内,任务群集中任务数量的增加加速度为连续减少,或者,所述任务数量的增加加速度的值低于所述加速度阈值的次数超过所述次数阈值,则确定回到常规状态。
9.如权利要求6所述的装置,其特征在于,
所述趋势预测模块,包括:
预测值计算单元,用于如果判断此任务群集进入突发状态,则采用突发预测算法预测此任务群集中的未来任务到达的预测值为:
所述预测值计算单元,用于如果判断此任务群集进入突发状态,则采用常规预测算法预测此任务群集中的未来任务到达的预测值为:
其中,s为预测的窗口时长,此时为t时刻,et+s为根据t时刻的任务到达数量对t+s时刻的任务达到数量的预测值,b1,b2,b3是预测参数,exp()为以自然底数e为底的指数函数,window为设定的影响预测值的历史数据个数,Win为第in个任务的历史数据对预测值的影响权重,i指的是在t时刻往回拨in个时间点所对应的时间长度,ct-i指t-i时刻的任务到达数量。
10.如权利要求6所述的装置,其特征在于,还包括:
所述任务分组模块,用于选取所述任务的历史数据,采用k-means聚类方法对所述历史数据进行预分组,得到所述多个任务群集,并获得每个任务群集的群集特征属性值;接收到所述任务时,获取所述任务的特征属性值;通过任务分类器分别计算所述特征属性值与多个所述群集特征属性值之间的马氏距离,将此任务分配给与最小的马氏距离相对应的任务群集;其中,所述任务包括:服务请求任务、计算请求任务。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810726207.5A CN109005052B (zh) | 2018-07-04 | 2018-07-04 | 网络任务预测方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810726207.5A CN109005052B (zh) | 2018-07-04 | 2018-07-04 | 网络任务预测方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109005052A true CN109005052A (zh) | 2018-12-14 |
CN109005052B CN109005052B (zh) | 2021-12-31 |
Family
ID=64598164
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810726207.5A Active CN109005052B (zh) | 2018-07-04 | 2018-07-04 | 网络任务预测方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109005052B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114928644A (zh) * | 2022-07-20 | 2022-08-19 | 深圳市安科讯实业有限公司 | 一种物联网网络融合加速网关 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103150215A (zh) * | 2013-02-04 | 2013-06-12 | 浙江大学 | 虚拟环境下细粒度的cpu资源使用预测方法 |
CN103795558A (zh) * | 2012-10-31 | 2014-05-14 | 英业达科技有限公司 | 负载预测方法与电子装置 |
CN103945548A (zh) * | 2014-04-29 | 2014-07-23 | 西安电子科技大学 | 一种c-ran网络中的资源分配系统及任务/业务调度方法 |
CN104679754A (zh) * | 2013-11-27 | 2015-06-03 | 富士通株式会社 | 用于数据预测的模型选择设备和方法 |
US9400682B2 (en) * | 2012-12-06 | 2016-07-26 | Hewlett Packard Enterprise Development Lp | Ranking and scheduling of monitoring tasks |
CN107426026A (zh) * | 2017-07-31 | 2017-12-01 | 山东省计算中心(国家超级计算济南中心) | 一种基于eemd‑arima的云计算服务器负载短期预测方法 |
CN108052639A (zh) * | 2017-12-21 | 2018-05-18 | 中国联合网络通信集团有限公司 | 基于运营商数据的行业用户推荐方法及装置 |
CN108108233A (zh) * | 2017-11-29 | 2018-06-01 | 上海交通大学 | 任务多副本执行的集群作业调度方法及系统 |
-
2018
- 2018-07-04 CN CN201810726207.5A patent/CN109005052B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103795558A (zh) * | 2012-10-31 | 2014-05-14 | 英业达科技有限公司 | 负载预测方法与电子装置 |
US9400682B2 (en) * | 2012-12-06 | 2016-07-26 | Hewlett Packard Enterprise Development Lp | Ranking and scheduling of monitoring tasks |
CN103150215A (zh) * | 2013-02-04 | 2013-06-12 | 浙江大学 | 虚拟环境下细粒度的cpu资源使用预测方法 |
CN104679754A (zh) * | 2013-11-27 | 2015-06-03 | 富士通株式会社 | 用于数据预测的模型选择设备和方法 |
CN103945548A (zh) * | 2014-04-29 | 2014-07-23 | 西安电子科技大学 | 一种c-ran网络中的资源分配系统及任务/业务调度方法 |
CN107426026A (zh) * | 2017-07-31 | 2017-12-01 | 山东省计算中心(国家超级计算济南中心) | 一种基于eemd‑arima的云计算服务器负载短期预测方法 |
CN108108233A (zh) * | 2017-11-29 | 2018-06-01 | 上海交通大学 | 任务多副本执行的集群作业调度方法及系统 |
CN108052639A (zh) * | 2017-12-21 | 2018-05-18 | 中国联合网络通信集团有限公司 | 基于运营商数据的行业用户推荐方法及装置 |
Non-Patent Citations (1)
Title |
---|
曹玲玲: "面向绿色云计算的资源配置及任务调度研究", 《中国优秀硕士学位论文全文数据库(信息科技辑)》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114928644A (zh) * | 2022-07-20 | 2022-08-19 | 深圳市安科讯实业有限公司 | 一种物联网网络融合加速网关 |
Also Published As
Publication number | Publication date |
---|---|
CN109005052B (zh) | 2021-12-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108984301B (zh) | 自适应云资源调配方法和装置 | |
CN109005130B (zh) | 网络资源配置调度方法和装置 | |
US8869160B2 (en) | Goal oriented performance management of workload utilizing accelerators | |
CN108027889B (zh) | 一种用于增量式学习云系统的训练、调度方法及相关设备 | |
US8510747B2 (en) | Method and device for implementing load balance of data center resources | |
CN104168318A (zh) | 一种资源服务系统及其资源分配方法 | |
US20120221730A1 (en) | Resource control system and resource control method | |
Zhang et al. | Virtual machine placement strategy using cluster-based genetic algorithm | |
CN106446959A (zh) | 一种云计算资源动态匹配方法及装置 | |
US20190332328A1 (en) | Storage Controller and IO Request Processing Method | |
US10216543B2 (en) | Real-time analytics based monitoring and classification of jobs for a data processing platform | |
CN109408230B (zh) | 基于能耗优化的Docker容器部署方法及系统 | |
CN105045667B (zh) | 一种用于虚拟机vCPU调度的资源池管理方法 | |
Panneerselvam et al. | An approach to optimise resource provision with energy-awareness in datacentres by combating task heterogeneity | |
CN109005052B (zh) | 网络任务预测方法和装置 | |
CN110796591A (zh) | 一种gpu卡的使用方法及相关设备 | |
CN109358964B (zh) | 一种服务器集群资源调度方法 | |
CN109597680B (zh) | 任务排队响应参数估算方法及装置 | |
US20230060623A1 (en) | Network improvement with reinforcement learning | |
CN114356531A (zh) | 基于K-means聚类和排队理论的边缘计算任务分类调度方法 | |
CN106406976A (zh) | 云计算环境下io密集型应用识别方法及装置 | |
US10430312B2 (en) | Method and device for determining program performance interference model | |
CN112882805A (zh) | 一种任务资源约束的利润优化调度方法 | |
CN115002049B (zh) | 资源分配的方法及装置 | |
US11416152B2 (en) | Information processing device, information processing method, computer-readable storage medium, and information processing system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |