Hadoop云平台下基于负载监控的混合调度方法

文档序号:6499680阅读:132来源:国知局
Hadoop云平台下基于负载监控的混合调度方法
【专利摘要】本发明公开了一种Hadoop云平台下基于负载监控的混合调度方法。通过分析Max-D算法、FIFO算法以及公平调度算法的调度效果和各自应用场景,提出一个基于负载监控的混合调度策略。本发明通过对系统负载的实时监控,在三个算法中选择最合适现负载状况的调度算法。相比单一的使用一种调度算法,基于负载监控的混合调度策略有着明显的优势,能够适应Hadoop系统中负载的变化,使得系统能够保持比较好的性能。
【专利说明】Hadoop云平台下基于负载监控的混合调度方法
【技术领域】
[0001]本发明涉及云平台作业调度方法,尤其是涉及一种Hadoop云平台下基于负载监控的混合作业调度方法。
技术背景
[0002]无线感知网络技术是近几年一个渐渐兴起的技术,集成了传感器技术、嵌入式计算技术、分布式信息处理技术和通信技术,是一种全新的信息获取和处理技术。它在理论设计、应用实现、发展方向等方面与传统网络不同,因此传感器网络的理论依据与系统设计与传统的网络系统有很大的区别。Hadoop是一个具有高可靠性的良好扩展性的分布式系统,可以在大量廉价的硬件设备组成的集群上运行应用程序,并且为应用程序提供了一组稳定可靠的接口。
[0003]Hadoop现有调度方法调度目标都比较单一,仅能满足单一的负载情况,而在不同的负载情况下,性能有很大区别,造成了作业调度方法适应性较差,不能满足云平台的复杂性和多样性。Hadoop中作业调度方法广泛使用FIFO方法或公平调度方法。FIFO方法根据作业(job)的提交时间对作业进行分配,优先分配先提交的作业。FIFO方法实现简单,调度消耗少,但是在面对海量数据处理时,某些需要大量计算的作业会长期占用资源,而后续作业将迟迟得不到执行,影响系统的性能和用户的体验。公平调度方法保证作业能够公平的获得资源进行执行,但是作业平均完成时间较长。

【发明内容】

[0004]本发明的目的是提供一种高效的Hadoop云平台下的混合调度方法,从而应对云平台的复杂性。
[0005]实现本发明目的的技术解决方案为:
1、Hadoop系统中的资源(taskTracker)向中心节点(jobTracker)持续发送自身节点的实时信息,包括是否空闲,正在执行任务的已执行时间以及执行进度。
[0006]2、对系统负载进行实时监控,根据资源发送的实时信息计算系统内的负载程度,系统负载指系统在某时刻正在执行的任务量:
假设系统中有m个资源,其中空闲的资源个数为k,待执行的任务数为numT,定义系统的负载度为:
【权利要求】
1.一种Hadoop云平台下基于负载监控的混合调度方法,其特征在于方法如下: (1)Hadoop系统中的资源taskTracker向中心节点jobTracker持续发送自身节点的实时信息,实时信息包括是否空闲、正在执行任务的已执行时间以及执行进度; (2)对系统负载进行实时监控,根据资源发送的实时信息计算系统内的负载程度: (3)当有资源向中心节点请求任务task时,根据实时负载程度选择调度方案:在系统资源低载情况下,使用FIFO调度方法,降低调度消耗;在负载平衡情况下使用公平调度方法,提高系统的公平性,保证作业都能得到执行;在过载情况下使用Max-D调度方法,使得作业平均完成时间缩短。
2.根据权利要求1中所述的Hadoop云平台下基于负载监控的混合调度方法,其特征在于:(2)中系统负载指系统在某时刻正在执行的任务量;对系统负载进行实时监控,根据资源发送的实时信息计算系统内的负载程度的方法为:假设系统中有m个资源,其中空闲的资源个数为k,待执行的任务数为numT,定义系统的负载度为:
3.根据权利要求1中所述的Hadoop云平台下基于负载监控的混合调度方法,其特征在于,(3)中涉及的Max-D调度方法实现流程如下: 第一步:确定云环境中所有计算资源以及空闲资源的集合; 第二步:对待分配作业按作业提交先后排序成队列,新提交的作业被加入该队列尾部; 第三步:对排序后的作业进行调度,采用Max-D方法选择合适的资源进行执行。
4.根据权利要求1或3中所述的Hadoop云平台下基于负载监控的混合调度方法,其特征在于,所述(3)中第三步的Max-D方法,其步骤如下: 步骤3.1:对所有待分配作业,计算作业在所有计算资源上的平均估计运行时间; 步骤3.2:计算每个作业的平均估计运行时间以及其在单个空闲的计算资源上最少的运行时间之间的差值Di,并记录该计算资源; 步骤3.3:在所有作业中找到差值Di最大的作业,并将该Di记为D ; 步骤3.4:若D≤0,则分派作业给记录的资源进行处理,同时将该资源从空闲资源集合中去除;若0 < 0,则重新确定分配的资源和空闲资源集合,将完成其分配作业的资源加入到空闲资源集合中,然后返回步骤3.1 ; 步骤3.5:重复步骤3.2到步骤3.4直到为所有申请作业的资源分配了作业。
5.根据权利要求4中所述的Hadoop云平台下基于负载监控的混合调度方法,其特征在于,步骤3.1中计算资源平均估计完成时间方法如下: 假设云环境是由η个未分配作业T = It1, t2,...tj和m个资源R = Ir1, r2,...rm}组成,每个资源同时只能对一个作业进行处理;资源中空闲的资源个数为k,记为R’ =Ir/,r2’,...rk’},其中k〈m ;作业ti在资源rj上的估计运行时间为TCirj,则作业ti在所有资源上的平均运行时间为
6.根据权利要求4中所述的Hadoop云平台下基于负载监控的混合调度方法,其特征在于,步骤3.2中计算差值D的方法如下: 作业ti在所有未分配工作的节点上的最小运行时间记为HiUTCi =minlTCir/ , TCir2',..., TCirk'},记录下满足 TCir/ = IiiUTCi 的未分配作业 rj’,并记 BRi=r/,然后根据公式Di = AvgTC1-1iiUTCi,得到作业i的差值Di。
【文档编号】G06F9/50GK103455375SQ201310038746
【公开日】2013年12月18日 申请日期:2013年1月31日 优先权日:2013年1月31日
【发明者】李千目, 陆路, 侯君 申请人:南京理工大学连云港研究院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1