首页> 中国专利> 一种MapReduce中备份任务推测执行策略的优化方案

一种MapReduce中备份任务推测执行策略的优化方案

摘要

一种MapReduce中备份任务推测执行策略的优化方案,采用指数平滑算法,结合集群中节点实时性能,对任务运行各阶段的时间分别计算,达到对任务运行的剩余时间进行准确预测的目的。解决了默认情况下,推测执行准确率低,由于错误地启动备份任务的问题。本方案极大程度的提高推测执行的正确率,节省了任务运行的时间,有效地节约了集群中有限的资源。

著录项

  • 公开/公告号CN105302647A

    专利类型发明专利

  • 公开/公告日2016-02-03

    原文格式PDF

  • 申请/专利权人 南京信息工程大学;

    申请/专利号CN201510752617.3

  • 发明设计人 刘琦;蔡卫东;肖博;沈剑;付章杰;

    申请日2015-11-06

  • 分类号G06F9/50(20060101);

  • 代理机构32241 江苏爱信律师事务所;

  • 代理人唐小红

  • 地址 210000 江苏省南京市建邺区奥体大街69号

  • 入库时间 2023-12-18 13:57:21

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-04-16

    授权

    授权

  • 2016-03-02

    实质审查的生效 IPC(主分类):G06F9/50 申请日:20151106

    实质审查的生效

  • 2016-02-03

    公开

    公开

说明书

技术领域

本发明属于云计算领域,具体涉及一种MapReduce中备份任务推测执行策略的优化方案。

背景技术

MapReduce是一个流行的编程模型处理大型数据集的目的。MapReduce可以分为map和reduce两种任务,map任务包含map阶段,reduce任务包括shuffle、merge和reduce阶段。MapReduce任务执行时间通常是由那些性能较低的节点决定。推测执行策略被称为处理上述问题的一种方法;具体来说是通过将低性能的机器上运行这些任务备份到性能更高机器上的。

尽管多个推测执行策略被提出了,仍有很多缺陷存在于策略。传统的推测执行策略,推测执行的准确率低,错误的启动推测执行策略,将消耗更多的资源。极端情况下,会导致整个集群运行速度的快速下降。甚至陷入由于资源的反复竞争,使整个集群陷入死锁的状态,最终可能导致任务的失败。此外,在云环境中,出售资源,或者说服务就是收益的一种方式,介绍资源消耗,就相当与是增加某个集群所带来的经济效益,如:某用户购买了某公司云计算服务(按时间计费),当用户提交一个作业时,采用默认的策略可能需要消耗20分钟,采用优化的策略则可以节约时间5分钟,这样就为用户节约了费用;最坏情况下,由于不合理地启动备份任务,会导致任务的失败,造成资源的浪费,而优化过后的策略则可以避免上述情况,提高了用户的满意度,所以提高备份任务推测执行策略的准确率有其必要性。

基于上述问题,一种MapReduce中备份任务推测执行策略的优化方案,采用指数平滑算法,集合集群中节点实时性能,极大程度的克服了原有策略准确率低,错误地启动备份任务,导致过度消耗集群资源。本方案提高了推测执行的正确率,有效地节约了资源,大大提升了整个集群的运行速度,缩短了任务执行所需要消耗的时间。

发明内容

本发明的目的是提供一种MapReduce中备份任务推测执行策略的优化方案,采用指数平滑算法,集合集群中节点实时性能,对任务运行的剩余时间进行准确的预测。解决默认情况下,推测执行准确率低,由于错误地启动备份任务的问题。极大程度的提高了推测执行的正确率,有效地节约了集群中有限的资源。

本发明所提供的一种MapReduce中备份任务推测执行策略的优化方案主要包括4个步骤:预测当前各任务完成时间、预测新任务完成时间、选择需备份的任务和选择在哪个节点上备份执行。

具体步骤如下:

(5)预测当前各任务完成时间

具体来说需根据以下公式:

其中,Trem代表当前任务总的剩余时间,它由当前阶段剩余时间和剩余阶段总的剩余时间组成。进一步的化简公式中,p代表剩余阶段中的某一个,fp代表剩余所有的阶段,代表某阶段p的平均完成时间。factord是个参数,可以表示为当前数据处理量和平均每个任务数据处理量的比值,datainput代表当前处理数据量,dataavg代表平均每个节点的处理数据量。其次,我们根据平滑处理后的公式来计算当前阶段的剩余时间。

(6)预测新任务完成时间:新任务的完成时间依据以下公式

Tbf=TimeStamp+Tavg

其中,Tbf代表备份任务完成的时刻,TimeStamp代表当前时刻,Tavg代表已经完成的任务在该阶段所用的时间。

(7)选则需备份的任务

遍历所有任务,选择如果开启备份执行,最后可能是有效任务的任务,也就是说,剩余执行时间和假如开启备份任务完成时间差最大的任务

(8)选择在哪个节点上备份执行

根据节点的位置进行分类:分为Data-Local、Rack-Local以及Other-Local,优先选择Data-Local,其次再根据剩余资源选择当前最优节点,会更有可能成为有效的推测执行。

有益效果

本发明解决了传统的推测执行策略,推测执行的准确率低,市场会错误地启动推测执行策略等缺点。本方案极大程度的提高了推测执行的正确率,有效地节约了资源,大大提升了整个集群的运行速度,缩短了任务执行所需要消耗的时间。

附图说明

图1为一种MapReduce中备份任务推测执行策略的优化方案的流

程图;

图2为WordCount执行时间的比较;

图3为Grep执行时间的比较。

具体实施方式

下面将参考附图并结合实施例,来详细说明本发明。以下结合实际部署情况为例来说明本发明。

本发明所提供的一种MapReduce中备份任务推测执行策略的优化方案主要包括4个步骤,如图1中所示,具体为:预测当前各任务完成时间、预测新任务完成时间、选择需备份的任务和选择在哪个节点上备份执行。

具体步骤如下:

(1)预测当前各任务完成时间

具体来说是根据以下公式:

其中,Trem代表当前任务总的剩余时间,它由当前阶段剩余时间和剩余阶段总的剩余时间组成。进一步的化简公式中,p代表剩余阶段中的某一个,fp代表剩余所有的阶段,代表某阶段p的平均完成时间。factord是个参数,可以表示为当前数据处理量和平均每个任务数据处理量的比值,datainput代表当前处理数据量,dataavg代表平均每个节点的处理数据量。当前阶段是shuffle阶段时,我们设置factord为1,因为shuffle未完成时难以估估计处理的数据量。

其次,我们根据平滑处理后的公式来计算当前阶段的剩余时间,平滑处理的公式如下:

vpt=a*vot+(1-a)*vpt-1,a=0.1,

vpt代表预测的速度,vot代表观测到的速度,vpt-1代表上一时刻的预测速度,a是其中一个参数,设置为0.1。则完成当前阶段剩余数据量需要时间可以表示为:

(2)预测新任务完成时间:新任务的完成时间依据以下公式

Tbf=TimeStamp+Tavg

其中,Tbf代表备份任务完成的时刻,TimeStamp代表当前时刻,Tavg代表已经完成的任务在该阶段所用的时间。

(3)选则需备份的任务

遍历所有任务,对每个任务计算Difference=Trem-Tbf

对于其中Difference小于0的任务直接舍弃,相互比较记录下Difference的最大值,对应的任务为需要开启备份任务的节点。

(4)选择在哪个节点上开启备份执行

根据节点的位置进行分类:分为Data-Local、Data-Rack以及Data-Other,优先选择Data-Local,其次再根据剩余资源选择当前最优节点,具体选择方式如下:

根据Ratio选择,选择出值最大的节点,代表着剩余资源相对丰富的点,将备份的任务交由这些节点执行,会更有可能成为有效的推测执行。

对提出的策略与原有策略进行课比较,分别运行了WordCount、Grep应用,WordCount和Grep的数据集为50GB。在不同策略下,每组实验进行了5次,了取平均值,MR-None代表在MapReduce里面禁用了推测执行策略;MR-Original代表在MapReduce里面采用了原始推测执行策略,MR-Optimized代表在MapReduce里面采用了本文提出的推测执行策略。

实验产生的结果如图2、图3所示,详细来说,我们的策略比原有策略减少了至少15%的执行时间;相对禁用该策略的情况,执行时间减少了了25%。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号