发明名称 一种MapReduce中备份任务推测执行策略的优化方案
摘要 一种MapReduce中备份任务推测执行策略的优化方案,采用指数平滑算法,结合集群中节点实时性能,对任务运行各阶段的时间分别计算,达到对任务运行的剩余时间进行准确预测的目的。解决了默认情况下,推测执行准确率低,由于错误地启动备份任务的问题。本方案极大程度的提高推测执行的正确率,节省了任务运行的时间,有效地节约了集群中有限的资源。
申请公布号 CN105302647A 申请公布日期 2016.02.03
申请号 CN201510752617.3 申请日期 2015.11.06
申请人 南京信息工程大学 发明人 刘琦;蔡卫东;肖博;沈剑;付章杰
分类号 G06F9/50(2006.01)I 主分类号 G06F9/50(2006.01)I
代理机构 江苏爱信律师事务所 32241 代理人 唐小红
主权项 一种MapReduce中备份任务推测执行策略的优化方案,其特征在于,包括4个步骤:预测当前各任务完成时间、预测新任务完成时间、选择需备份的任务和选择在哪个节点上备份执行;具体步骤如下:(1)预测当前各任务完成时间具体来说需根据以下公式:<maths num="0001" id="cmaths0001"><math><![CDATA[<mfenced open = "" close = ""><mtable><mtr><mtd><mrow><msub><mi>T</mi><mrow><mi>r</mi><mi>e</mi><mi>m</mi></mrow></msub><mo>=</mo><msub><mi>T</mi><mrow><mi>c</mi><mi>p</mi></mrow></msub><mo>+</mo><msub><mi>T</mi><mrow><mi>f</mi><mi>p</mi></mrow></msub></mrow></mtd></mtr><mtr><mtd><mrow><mo>=</mo><msub><mi>T</mi><mrow><mi>c</mi><mi>p</mi></mrow></msub><mo>+</mo><munder><mo>&Sigma;</mo><mrow><mi>p</mi><mi>inf</mi><mi>p</mi></mrow></munder><msub><mi>T</mi><mrow><msub><mi>avg</mi><mi>p</mi></msub></mrow></msub><mo>*</mo><msub><mi>factor</mi><mi>d</mi></msub></mrow></mtd></mtr></mtable></mfenced>]]></math><img file="FDA0000841269810000011.GIF" wi="909" he="255" /></maths><maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><msub><mi>factor</mi><mi>d</mi></msub><mo>=</mo><mfrac><mrow><msub><mi>data</mi><mrow><mi>i</mi><mi>n</mi><mi>p</mi><mi>u</mi><mi>t</mi></mrow></msub></mrow><mrow><msub><mi>data</mi><mrow><mi>a</mi><mi>v</mi><mi>g</mi></mrow></msub></mrow></mfrac></mrow>]]></math><img file="FDA0000841269810000012.GIF" wi="390" he="148" /></maths>其中,T<sub>rem</sub>代表当前任务总的剩余时间,它由当前阶段剩余时间和剩余阶段总的剩余时间组成;进一步的化简公式中,p代表剩余阶段中的某一个,fp代表剩余所有的阶段,<img file="FDA0000841269810000013.GIF" wi="94" he="79" />代表某阶段p的平均完成时间;factor<sub>d</sub>是个参数,可以表示为当前数据处理量和平均每个任务数据处理量的比值,data<sub>input</sub>代表当前处理数据量,data<sub>avg</sub>代表平均每个节点的处理数据量;其次,我们根据平滑处理后的公式来计算当前阶段的剩余时间;(2)预测新任务完成时间:新任务的完成时间依据以下公式T<sub>bf</sub>=TimeStamp+T<sub>avg</sub>其中,T<sub>bf</sub>代表备份任务完成的时刻,TimeStamp代表当前时刻,T<sub>avg</sub>代表已经完成的任务在该阶段所用的时间;(3)选则需备份的任务遍历所有任务,选择如果开启备份执行,最后可能是有效任务的任务,也就是说,剩余执行时间和假如开启备份任务完成时间差最大的任务;(4)选择在哪个节点上备份执行根据节点的位置进行分类:分为Data‑Local、Rack‑Local以及Other‑Local,优先选择Data‑Local,其次再根据剩余资源选择当前最优节点,会更有可能成为有效的推测执行。
地址 210000 江苏省南京市建邺区奥体大街69号