CN107589985B - 一种面向大数据平台的两阶段作业调度方法及*** - Google Patents

一种面向大数据平台的两阶段作业调度方法及*** Download PDF

Info

Publication number
CN107589985B
CN107589985B CN201710590748.5A CN201710590748A CN107589985B CN 107589985 B CN107589985 B CN 107589985B CN 201710590748 A CN201710590748 A CN 201710590748A CN 107589985 B CN107589985 B CN 107589985B
Authority
CN
China
Prior art keywords
job
platform
scheduling
resource
time
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.)
Active
Application number
CN201710590748.5A
Other languages
English (en)
Other versions
CN107589985A (zh
Inventor
史玉良
胡静
李庆忠
张世栋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong University
Original Assignee
Shandong University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shandong University filed Critical Shandong University
Priority to CN201710590748.5A priority Critical patent/CN107589985B/zh
Publication of CN107589985A publication Critical patent/CN107589985A/zh
Application granted granted Critical
Publication of CN107589985B publication Critical patent/CN107589985B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明涉及一种面向大数据平台的两阶段作业调度方法及***,将用户提交的作业形成待调度作业集合,基于作业最晚开始时间的最大收益调度:根据作业的截止时间对平台的资源进行预分配,并根据作业的收益比对资源预分配的结果进行调整和调度,得到使服务商的收益最大的资源预分配作业调度结果队列;基于平台最大资源利用率的作业调度:根据平台的资源使用情况,对上述的资源预分配作业调度结果队列进行微调整得到最终调度结果队列,保证平台收益最大的前提下使平台的资源利用率达到最高。实验结果表明,本发明不仅实现了平台收益最大化,而且也提高了平台的资源利用率,提升了平台的综合性能。

Description

一种面向大数据平台的两阶段作业调度方法及***
技术领域
本发明属于大数据计算的技术领域,尤其涉及一种面向大数据平台的两阶段作业调度方法及***。
背景技术
近年来,随着云计算和互联网技术的蓬勃发展,数据显现出爆发式的持续增长模式,大数据时代悄然到来。传统的数据处理技术和工具已经无法满足新时代的数据处理要求,因此大数据平台应运而生。大数据平台支持多种计算框架,可以为多个用户同时提供服务。然而在大数据平台中,多用户共享平台的资源,对于平台提供商而言,如何高效地调度多用户的作业,既能充分利用平台的资源,又能满足绝大多数用户的SLA需求,使自己的收益最大,已然成为了一个亟待解决的问题。
目前,已有很多研究者针对大数据平台中的作业调度问题进行了深入研究,并提出了很多解决方法。Zhang Z等人发表的《Optimizing Completion Time and ResourceProvisioning of Pig Programs》针对Pig作业提出了基于截止时间预估的资源配置性能优化模型,该模型消除了pig程序执行并发作业中的非确定性问题,然而该模型并没有考虑平台收益的问题。Liu等人提出了基于优先级的作业并行调度方法,该方法利用虚拟技术将每个节点的计算能力划分为前台虚拟机(具有较高的CPU优先级)层和后台虚拟机(具有较低的CPU优先级)层,通过两个层级的划分,该方法均衡了平台的负载,充分地利用了平台的CPU资源,有效度提高了作业的执行效率,缩短了作业的响应时间,但是这种调度方法并没有考虑平台收益的问题。由此可见,现有的研究成果针对不同约束条件、不同背景下的作业调度问题进行了深入研究,并取得了一系列成果,但是这些成果中的方法都没有考虑平台收益的问题,更未同时考虑平台收益最大化和平台资源利用率最大化的问题。
大数据平台可以同时为多个用户服务,对于平台服务提供商而言,合理地调度这些用户服务不仅可以同时满足多用户的需求,增加自己收益,还可以提高平台利用率,多用户作业执行过程如图1所示。
从图1可知,平台中有三个用户的6个作业,每个用户各两个作业,当用户提交完作业以后,平台服务提供商会根据平台的资源、与用户签订的SLA协议等对作业进行调度并生成执行队列,结果如图1所示。当用户的作业执行完毕后,服务商可以获得相应的收益。理想情况下,平台的资源足够,可以满足所有用户的需求,此时服务商的收益也是最大的;但是现实中,平台的资源是有限的,并且很有可能不能满足所有用户的需求,对于平台服务提供商而言,将面临以下问题:
(1)根据平台中可以用的资源和用户的SLA需求,如何调度多用户的作业,才能使自己的收益最大;
(2)在(1)的基础上,假设已经生成了一个可以使服务商的收益最大的作业执行队列,如何调整作业执行队列既能保证收益最大,又能进一步提高平台的资源利用率。
综上所述,如何在大数据平台中同时解决平台收益最大化和平台资源利用率最大化的问题,尚缺乏有效的解决方案。
发明内容
本发明为了解决上述问题,提供一种面向大数据平台的两阶段作业调度方法。本发明的调度方法综合考虑了作业的截止期限约束、平台的最大收益和最大资源利用率等约束条件,采用基于收益和资源的两阶段作业调度方法,该调度方法不仅可以满足大数据平台用户的作业截止时间要求,还可以保证实现平台收益最大化的同时实现平台资源利用率最高。
为了实现上述目的,本发明采用如下一种技术方案:
一种面向大数据平台的两阶段作业调度方法,该方法包括以下步骤:
(1)将用户提交的作业形成待调度作业集合,进行基于作业最晚开始时间的最大收益调度:根据作业的截止时间对平台的资源进行预分配,并根据作业的收益比对资源预分配的结果进行调整和调度,得到使服务商的收益最大的资源预分配作业调度结果队列;
(2)进行基于平台最大资源利用率的作业调度:根据平台的资源使用情况,对步骤(1)的资源预分配作业调度结果队列进行微调整得到最终调度结果队列,保证平台收益最大的前提下使平台的资源利用率达到最高。
进一步的,所述步骤(1)的基于作业最晚开始时间的最大收益调度的具体步骤为:
(1-1)计算待调度作业集合中每个作业的初始最晚开始时间,并按照初始最晚开始时间对平台的资源进行资源预分配;
(1-2)根据资源预分配的分配结果,统计每个时间段需要的计算资源总数,得到资源预分配结果P_R;
(1-3)判断资源预分配结果P_R中是否存在超负荷时间段,若存在,进入步骤(1-4),若不存在,进入步骤(1-5);
(1-4)对资源预分配结果P_R中的超负荷时间段作业的初始最晚开始时间进行调整,并根据调整结果更新P_R,返回步骤(1-3);
(1-5)输出使服务商的收益最大的资源预分配结果P_R。
进一步的,所述步骤(1-1)中,按照初始最晚开始时间对平台的资源进行资源预分配的具体步骤为:
让每个作业在其初始最晚开始时间开始执行,得到当所有作业刚好在其截止时间完成时各个时间段需要的资源数;
所述作业的初始最晚开始时间为:对于待调度作业集合中的任意作业,当没有其他作业争用资源时,使作业恰好能在截止时间点完成的作业开始时间;
在本发明中,当多个作业的截止时间相近时,由于平台计算资源有限,作业间可能发生资源争抢,作业在其初始最晚开始时间开始执行时无法在截止时间前完成。因此,需要对资源争抢时间段的作业的初始最晚开始时间进行调整,本发明根据作业的初始最晚开始时间对所有作业进行资源预分配,有效的确定了发生资源争抢的时间段。
进一步的,所述步骤(1-3)中,判断资源预分配结果P_R中是否存在超负荷时间段即判断在某一时间段内运行的作业需要的计算资源数总和是否大于大数据平台的计算资源总数;若大于,则该时间段为超负荷时间段,否则,该时间段为正常负荷时间段。
所述大数据平台的计算资源总数为大数据平台中所有标准Container的数量。
进一步的,所述步骤(1-4)的具体步骤为:
(1-4-1)选取最后一个超负荷时间段,并获取在该时间段内执行的所有作业形成作业集;
(1-4-2)在作业集中选取一个最小真子集,最小真子集将作业集中所有作业的初始最晚开始时间提前至使该时间段为正常负荷状态的正常负荷时间段,将所有满足条件的最小真子集的集合组成该时间段的可行调整策略集合;
(1-4-3)根据评估函数评估可行调整策略集合中的每个可行调整策略的评估值,并选取最优的调整策略;
(1-4-4)根据最优的调整策略,对该策略中的作业的最初最晚开始时间进行调整,并根据调整后的作业的最初最晚开始时间更新资源预分配结果P_R。
进一步的,所述步骤(1-4-3)中的评估函数为:
Figure BDA0001354673630000041
其中,
Figure BDA0001354673630000042
为调整策略中所有作业的收益评估值的总和,
Figure BDA0001354673630000043
为当前时间段内所有作业的收益评估值的总和,lastsize为按该策略进行调整后,当前时间段剩余资源占平台计算资源总数的百分比,Sp为作业的收益评估值,Sp=|a-b|,a是作业按时完成时获得的收益值,b是作业未按时完成时获得的收益值。
进一步的,所述步骤(2)的基于平台最大资源利用率的作业调度的具体步骤为:
(2-1)初始化变量最终调度结果队列和T时刻;
(2-2)寻找能在T时刻执行且不与资源预分配结果P_R发生冲突的作业集;
(2-3)判断不与资源预分配结果P_R发生冲突的作业集是否为空集,若为空集,将T时刻设置为资源预分配结果P_R中下一个时间段的初始时间;若不为空集,则在作业集中选择使资源浪费率最小的作业,得到其最优开始时间,更新T时刻;
(2-4)重复执行步骤(2-2)-步骤(2-3),直到为每个作业都设置了一个最优开始时间,得到最终调度结果;
(2-5)输出最终调度结果。
进一步的,所述步骤(2-3)的中的资源浪费率为经过调度后不可再利用资源与当前已用的计算资源之间的比值;
当前已用的计算资源为使用的计算资源与空闲计算资源的总和。
大数据平台中,为了能够充分利用平台的资源,提高服务商的收益,本发明提供一种面向大数据平台的两阶段作业调度***,该调度***基于上述一种面向大数据平台的两阶段作业调度方法。
为了实现上述目的,本发明采用如下一种技术方案:
一种面向大数据平台的两阶段作业调度***,该***包括:
第一阶段调度模块,所述第一阶段调度模块用于将用户提交的作业形成待调度作业集合,基于每个作业的最晚开始时间约束和服务商的总体最大收益,采用基于作业最晚开始时间的最大收益调度对待调度作业集合中的作业进行第一次调整调度,得到使服务商的收益最大的资源预分配作业调度结果队列;
第二阶段调度模块,所述第二阶段调度模块用于根据平台的资源使用情况,对第一阶段调度模块的资源预分配作业调度结果队列进行微调整得到最终调度结果队列,最终调度结果队列保证平台收益最大的前提下使平台的资源利用率达到最高,又能够使平台的资源得到充分利用,最终调度结果队列中每个作业带都有最优开始时间。
进一步的,所述待调度作业集为:平台服务提供商在某个时间段内接收一批作业并与用户协商签订与作业相关的SLA协议,作业的集合为待调度作业集J,表示为J={j1,j2,…,jn},其中,n为J中作业的个数;
对于待调度作业集J中的任意作业ji,表示为ji=(ms,rs,mt,rt,dl,bf(t)),其中,ms为该作业的Map任务数;rs为该作业的Reduce任务数;mt为该作业Map任务的平均执行时间;rt为该作业Reduce任务的平均执行时间;dl为该作业的截止时间约束;bf(t)为该作业的收益函数。
进一步的,所述第一调度模块中包括第一作业调度器和第一资源调度器,所述第二调度模块中包括第二作业调度器和第二资源调度器。
本发明的有益效果:
本发明的一种面向大数据平台的两阶段作业调度方法及***,基于MapReduce计算框架,针对有截止时间约束的作业提出一种两阶段作业调度***和方法。在第一阶段提出一种基于作业最晚开始时间的最大收益调度方法,该调度方法根据作业的截止时间约束以及作业的收益信息计算并调整每个作业的最晚开始时间,并根据调整结果进行资源预分配,以保证收益大的作业能够在截止时间前完成,以使平台总收益最大;在第二阶段,在保证平台收益最大的前提下,提出基于平台最大资源利用率的作业调度方法,以提高平台资源利用率。实验结果表明,本发明提出的两阶段作业调度方法不仅实现了平台收益最大化,而且也提高了平台的资源利用率,提升了平台的综合性能。
附图说明
图1为大数据平台多用户作业执行过程示意图;
图2为本发明的方法流程图;
图3为本发明的基于作业最晚开始时间的最大收益调度的方法流程图;
图4为本发明的基于平台最大资源利用率的作业调度的方法流程图;
图5为本发明的***结构示意图;
图6为本发明的资源利用率与平均作业大小的关系示意图;
图7为本发明的作业完成率与平均作业大小的关系示意图;
图8为本发明的总收益与平均作业大小的关系示意图;
图9为本发明的作业集规模对资源利用率的影响示意图;
图10为本发明的作业集规模对作业完成率的影响示意图;
图11为本发明的作业集规模对收益的影响示意图;
图12为本发明的计算资源总数对资源利用率的影响示意图;
图13为本发明的计算资源总数对作业完成率的影响示意图;
图14为本发明的计算资源总数对收益的影响示意图;
图15为本发明的作业紧迫程度对资源利用率的影响示意图。
具体实施方式:
应该指出,以下详细说明都是例示性的,旨在对本申请提供进一步的说明。除非另有指明,本发明使用的所有技术和科学术语具有与本申请所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面结合附图与实施例对本发明作进一步说明。
实施例1:
正如背景技术所介绍的,现有技术中存在无法有效解决平台收益最大化和平台资源利用率最大化的问题,提供一种面向大数据平台的两阶段作业调度方法。本发明的调度方法综合考虑了作业的截止期限约束、平台的最大收益和最大资源利用率等约束条件,采用基于收益和资源的两阶段作业调度方法,该调度方法不仅可以满足大数据平台用户的作业截止时间要求,还可以保证实现平台收益最大化的同时实现平台资源利用率最高。
为了实现上述目的,本发明采用如下一种技术方案:
如图2所示,
一种面向大数据平台的两阶段作业调度方法,该方法包括以下步骤:
(1)将用户提交的作业形成待调度作业集合,基于作业最晚开始时间的最大收益调度:根据作业的截止时间对平台的资源进行预分配,并根据作业的收益比对资源预分配的结果进行调整和调度,得到使服务商的收益最大的资源预分配作业调度结果队列;
(2)基于平台最大资源利用率的作业调度:根据平台的资源使用情况,对步骤(1)的资源预分配作业调度结果队列进行微调整得到最终调度结果队列,保证平台收益最大的前提下使平台的资源利用率达到最高。
第一阶段:基于作业最晚开始时间的最大收益调度
首先,将用户提交的作业形成待调度作业集合,其中,待调度作业集为:
平台服务提供商在某个时间段内接收一批作业并与用户协商签订与作业相关的SLA协议,作业的集合为待调度作业集J,表示为J={j1,j2,…,jn},其中,n为J中作业的个数;
本发明是同构集群下的基于MapReduce计算框架的大数据平台中的作业调度,因此假设各节点的硬件配置大致相同,处理性能与稳定性一致,对任意一个任务无论在那个节点运行,其运行时间都一致。对于任意作业,本发明假设已知作业的Map任务数和Reduce任务数,以及Map任务和Reduce任务的平均执行时间,另外本发明不考虑作业的数据倾斜情况,默认作业的每个Map任务(或每个reduce任务)的处理时间一致。
对于J中的每一个作业,本发明关注作业的执行时间、占用资源数、截止时间、收益等信息,对于待调度作业集J中的任意作业ji,表示为ji=(ms,rs,mt,rt,dl,bf(t)),其中,ms为该作业的Map任务数;rs为该作业的Reduce任务数;mt为该作业Map任务的平均执行时间;rt为该作业Reduce任务的平均执行时间;dl为该作业的截止时间约束;bf(t)为该作业的收益函数。
作业的收益函数bf(t)是一个关于作业实际完成时间ji.end的分段函数:
Figure BDA0001354673630000081
其中,a和b分别表示在截止时间内完成该作业获得的收益以及不能在截止时间内完成该作业获得的收益(为不失一般性,当不能在截止时间前完成则需赔付用户相应金额时收益值b用负数表示)。
本发明中规定作业的截止时间都为软截止时间,即作业不能在其截止时间前完成时不会造成严重后果,也不会放弃作业的执行。
如图3所示,所述步骤(1)第一阶段的基于作业最晚开始时间的最大收益调度的具体步骤为:
(1-1)计算待调度作业集合J={j1,j2,…,jn}中每个作业ji的初始最晚开始时间ji.Tols,并按照初始最晚开始时间ji.Tols对平台的资源进行资源预分配;
(1-2)根据资源预分配的分配结果,统计每个时间段运行作业需要的计算资源数总和,得到资源预分配结果P_R;
(1-3)判断资源预分配结果P_R中是否存在超负荷时间段,若存在,进入步骤(1-4),若不存在,进入步骤(1-5);
(1-4)对资源预分配结果P_R中的超负荷时间段作业的初始最晚开始时间进行调整,并根据调整结果更新P_R,返回步骤(1-3);
(1-5)输出使服务商的收益最大的资源预分配结果P_R。
在本实施例中,所述步骤(1-1)中的按照初始最晚开始时间对平台的资源进行资源预分配的具体步骤为:
让每个作业在其初始最晚开始时间开始执行,得到当所有作业刚好在其截止时间完成时各个时间段需要的资源数;
所述作业的初始最晚开始时间ji.Tols为:对于待调度作业集合J={j1,j2,…,jn}中的任意作业ji,当没有其他作业争用资源时,使作业ji恰好能在截止时间点完成的作业开始时间;若作业ji的截止时间为ji.dl,该作业的初始最晚开始时间计算公式如下:
Figure BDA0001354673630000091
在本发明中,对任意作业ji,在没有资源争用时,该作业必须在初始最晚开始时间ji.Tols前开始执行才能保证该作业在截止时间前完成,当作业在初始最晚开始时间ji.Tols时刻开始执行时恰好能在截止时间点完成。当多个作业的截止时间相近时,由于平台计算资源有限,作业间可能发生资源争抢,作业ji在其初始最晚开始时间ji.Tols开始执行时无法在截止时间前完成。因此,需要对资源争抢时间段的作业ji的初始最晚开始时间ji.Tols进行调整,本发明根据作业的初始最晚开始时间ji.Tols对所有作业ji进行资源预分配,即让作业ji在ji.Tols时刻开始执行,由此得到当所有作业刚好在其截止时间完成时各个时间段需要的计算资源总数,有效的确定了发生资源争抢的时间段。
在本实施例中,所述步骤(1-2)中的资源预分配结果P_R为:
P_R={(P1,R1),(P2,R2),…,(Pt,Rt)},其中,Pi为某一时间段,Ri为在某一时间段内运行的作业需要的计算资源数总和;
在本实施例中,在某一时间段内运行的作业需要的计算资源数总和中,本发明对资源预分配结果P_R中的各个时间段内可能出现的状态进行定义:
正常负荷状态:在资源预分配结果P_R中,对于某一时间段P,在该时间段P内运行的作业需要的计算资源数总和R小于大数据平台的计算资源总数TS,则称该时间段的状态为正常负荷状态,处于正常负荷状态的时间段称为正常时间段。
超负荷状态:在资源预分配结果P_R中,对于某一时间段P,在该时间段P内运行的作业需要的计算资源数总和R大于大数据平台的计算资源总数TS,则称该时间段的状态为超负荷状态,处于超负荷状态的时间段称为超负荷时间段。
超负荷时间段内,大数据平台的计算资源(Computing Resources)不能满足所有作业的需求,作业间将发生资源争抢,最终导致作业的延迟完成。
在本实施例中,所述步骤(1-3)中,判断资源预分配结果P_R中是否存在超负荷时间段即判断在某一时间段内运行的作业需要的计算资源数总和是否大于大数据平台的计算资源总数TS;若大于,则该时间段为超负荷时间段,否则,该时间段为正常负荷时间段。
所述大数据平台的计算资源总数(Total Number of Computing Resources,TS)为大数据平台中所有标准Container的数量。
例如,在包含1个主节点和Ndn个从节点的大数据平台中,每个从节点的配置都为c核CPU、mG内存,每个Container大小设置为c1核CPU\m1G内存,则该大数据平台的计算资源总数为:
TS=min(c/c1,m/m1)*Ndn
其中,min(c/c1,m/m1)为每个计算节点拥有的最大Container数量。
针对超负荷时间段,需要寻找一个最优调整策略对其进行调整并保证平台收益最大:
在本实施例中,所述步骤(1-4)的具体步骤为:
(1-4-1)选取最后一个超负荷时间段,并获取在该时间段内执行的所有作业形成作业集Ju;
(1-4-2)在作业集Ju中选取一个最小真子集
Figure BDA0001354673630000101
最小真子集Js将作业集Ju中所有作业的初始最晚开始时间提前至使该时间段为正常负荷状态的正常负荷时间段,将所有满足条件的最小真子集Js的集合组成该时间段的可行调整策略集合CL={Js1,Js2,…,Jsm};
(1-4-3)根据评估函数评估可行调整策略集合CL={Js1,Js2,…,Jsm}中的每个可行调整策略的评估值,并选取最优的调整策略;
(1-4-4)根据最优的调整策略,对该策略中的作业的最初最晚开始时间进行调整,并根据调整后的作业的最初最晚开始时间更新资源预分配结果P_R。
为寻找最优调整策略,首先定义可行调整策略集合如下所示:
可行调整策略集合:在基于作业截止时间的资源预分配结果P_R中,对于某个超负荷时间段内运行的作业集Ju,在作业集Ju中选出一个最小真子集
Figure BDA0001354673630000111
将Js中所有作业的最晚开始时间提前以使该时间段的作业占用的计算资源总数不超过大数据平台的计算资源总数TS(即将该时间段由超负荷状态调整为正常负荷状态),这样的一个最小真子集Js称为一个可行调整策略。所有满足条件的Js的集合CL={Js1,Js2,…,Jsm}称为该时间段的可行调整策略集合。
对于可行调整策略集合CL={Js1,Js2,…,Jsm}中的每个作业集Jsi,为将超负荷状态调整为正常负荷状态,应将Jsi中的所有作业的最晚开始时间提前至:
Figure BDA0001354673630000112
其中ji∈Jsi,Tcs为该超时时间段的开始时间。
对于一个处于超负荷状态的时间段来说,其可行调整策略不止一条,在可行调整策略集合中选择任意一条可行调整策略对该超负荷时间段进行调整,为保证大数据平台的收益最大,需要对可行调整策略集合中的所有可行调度策略进行收益评估,并根据评估结果在其中选择最优的调整策略。评估时主要考虑如下两个方面:
(1)收益评估值。
为对超时时间段(超负荷时间段)进行处理,本发明将作业的最晚开始时间提前至ji.Tls处,当ji.Tls<0时,表示当前时间点无法保证作业能在截止时间前完成,这时需要适当的对某些作业进行舍弃,优先执行收益评估值大的作业以保证平台的总收益最大。因此,在按调整策略进行调整时应优先保证收益评估值大的作业能够在截止时间前完成,即在可行调整策略集合CL={Js1,Js2,…,Jsm}中,最优的调整策略应该是对总收益评估值最小的作业集进行调整。对于任意一个作业,作业的收益评估值Sp是按时完成时获得的收益值a与作业未按时完成时获得的收益b之间的差值:
Sp=|a-b|。
(2)调整代价。
在对作业进行调整时,本发明不仅要考虑收益评估值,还需要考虑被调整作业占用的资源数对作业调整产生的影响,即调整代价。考虑这样一种情况,在一个处于超时状态的时间段中,有两个作业ja和jb,并且ja.Sp>jb.Sp,只从收益的角度看应该将jb的最晚开始时间提前以保证至少ja能完成。然而由于ja需要的计算资源很少而jb需要的计算资源很多,将jb的最晚开始时间提前后会导致前面的时间段变为超时状态,需要不断对前面的时间段进行调整最后甚至导致jb或其他作业的Tls小于0从而被舍弃;而如果把ja的最晚开始时间提前则由于ja占用的资源少因而所有的作业都能够在截止时间前完成。
综上考虑两个方面的因素,本发明提出了一个以平台收益最大化为优化目标的调整策略评估函数,得分较小的调整策略为最优调整策略,评估函数如下:
Figure BDA0001354673630000121
其中,
Figure BDA0001354673630000122
为调整策略中所有作业的收益评估值的总和,
Figure BDA0001354673630000123
为当前时间段内所有作业的收益评估值的总和,lastsize为按该策略进行调整后,当前时间段剩余资源占平台计算资源总数的百分比。
在此过程中,需要对总收益进行计算。大数据平台中服务提供商接收的作业集J={j1,j2,…,jn}中每个作业都有自己的完成时间约束ji.dl以及关于时间的收益函数ji.bf(t),作业的实际完成时间ji.end在ji.dl前或ji.dl后时获得不同的收益,对于所有的作业,总收益计算函数为:
Figure BDA0001354673630000124
根据以上描述,本发明提出基于作业最晚开始时间的最大收益调度算法,如下所示。
Figure BDA0001354673630000125
Figure BDA0001354673630000131
在算法1中,1-3行执行步骤(1-1),计算待调度作业集合J={j1,j2,…,jn}中每个作业ji的初始最晚开始时间ji.Tols,并按照初始最晚开始时间ji.Tols对平台的资源进行资源预分配。
第4行执行步骤(1-2),根据资源预分配的分配结果,统计每个时间段运行作业需要的计算资源数总和,得到资源预分配结果P_R。
第5-23行执行步骤(1-3)和(1-4),判断资源预分配结果P_R中是否存在超负荷时间段,若存在,则对该时间段作业的初始最晚开始时间进行调整。
在步骤(1-4)的资源预分配结果P_R中的超负荷时间段作业的初始最晚开始时间进行具体调整时,第6-7行执行步骤(1-4-1),第6行选取最后一个超负荷时间段,第7行获取在该时间段内执行的作业集Ju;第8行执行步骤(1-4-2),根据作业集Ju将所有满足条件的最小真子集Js的集合组成该时间段的可行调整策略集合CL={Js1,Js2,…,Jsm};第9-16行执行步骤(1-4-3),根据评估函数评估每个可行调整策略的评估值并选取最优的调整策略;17-23行执行步骤(1-4-4),选出最优调整策略后,对该策略中的作业进行最晚开始时间调整,并根据调整结果更新P_R;
循环执行第6-23行直到P_R中不存在超负荷时间段为止。
第24行执行步骤(1-5),将P_R作为返回结果输出。
算法1中,外部有两个循环,内部有一个循环,所以算法1的时间复杂度为n+n*(n+n),即2n2+n。
第二阶段:基于平台最大资源利用率的作业调度
如图4所示,所述步骤(2)的基于平台最大资源利用率的作业调度的具体步骤为:
(2-1)初始化变量最终调度结果队列和T时刻;
(2-2)寻找能在T时刻执行且不与资源预分配结果P_R发生冲突的作业集;
(2-3)判断不与资源预分配结果P_R发生冲突的作业集是否为空集,若为空集,将T时刻设置为资源预分配结果P_R中下一个时间段的初始时间;若不为空集,则在作业集中选择使资源浪费率最小的作业,得到其最优开始时间,更新T时刻;
(2-4)重复执行步骤(2-2)-步骤(2-3),直到为每个作业都设置了一个最优开始时间,得到最终调度结果;
(2-5)输出最终调度结果。
在本实施例中,所述步骤(2-3)的中的资源浪费率为经过调度后不可再利用资源与当前已用的计算资源之间的比值;
当前已用的计算资源为使用的计算资源与空闲计算资源的总和。
通过第一阶段的基于作业最晚开始时间的最大收益调度算法,本发明得到使平台收益最大的资源预分配结果P_R,根据这个结果执行作业虽然能保证收益大的作业都在截止时间前完成,但是并不能保证平台的资源利用率最高。因此,本发明的面向大数据平台的两阶段作业调度方法的第二阶段提出了一个基于平台最大资源利用率的二次调整调度算法,在保证平台收益最大的前提下最大化平台资源利用率。
在第二阶段的调度算法中,本发明考虑根据第一阶段算法得到的资源预预分配结果以保证所有作业的按时完成,同时考虑调度后平台的资源利用率。为使平台资源利用率最大,本发明使用浪费资源率(Wrr)对计算资源利用率进行评估,浪费资源率Wrr即经过调度后不可再利用资源Wr与当前已用的计算资源Ar(计算使用的计算资源与空闲计算资源的总和)之间的比值,即:
Figure BDA0001354673630000151
浪费资源率Wrr越小代表当前平台的资源利用率最大。
根据以上描述,本文提出基于平台最大资源利用率的作业调度算法,如下所示:
Figure BDA0001354673630000152
Figure BDA0001354673630000161
在算法2中,
1-2行执行步骤(2-1),初始化变量;
4-10行执行步骤(2-2),寻找能在T时刻执行且不与预分配资源发生冲突的作业集Ej
11-20行执行步骤(2-3),第11行判断不与资源预分配结果P_R发生冲突的作业集是否为空集,
12-18行,若Ej不为空,则在Ej中选择使资源浪费率最小的作业并设置其最优开始时间为当前时刻T;
20行,若Ej为空,则将时刻T设置为P_R中下一个时间段的初始时间;
循环执行3-20行,直到为每个作业都设置了一个最优开始时间;
21行执行步骤(2-5),将结果返回。
算法2中有两个循环,所以时间复杂度为n2。
经过二次调整调度后,本发明为待调度作业集中的每个作业确定了一个作业的启动时间,由于经过二次调整调度后,作业的资源利用率变大,作业的实际开始时间和完成时间提前,许多在资源预分配算法中由于资源不充足而被抛弃的作业从新得到执行机会,因而经二次调整调度后,集群的收益将有机会再次得到增大。
实施例2:
大数据平台中,为了能够充分利用平台的资源,提高服务商的收益,本发明提供一种面向大数据平台的两阶段作业调度***,该调度***基于实施例1中的一种面向大数据平台的两阶段作业调度方法。
为了实现上述目的,本发明采用如下一种技术方案:
如图5所示,
一种面向大数据平台的两阶段作业调度***,该***包括:
第一阶段调度模块,所述第一阶段调度模块用于将用户提交的作业形成待调度作业集合,作业集合中每个作业都有自己的SLA信息,基于每个作业的最晚开始时间约束和服务商的总体最大收益,采用基于作业最晚开始时间的最大收益调度对待调度作业集合中的作业进行第一次调整调度,得到使服务商的收益最大的资源预分配作业调度结果队列;
第二阶段调度模块,所述第二阶段调度模块用于根据平台的资源使用情况,在保证服务商的收益最大的前提下,以提高平台资源利用率为目的进行二次调整调度,对第一阶段调度模块的资源预分配作业调度结果队列进行微调整得到最终调度结果队列,最终调度结果队列保证平台收益最大的前提下使平台的资源利用率达到最高,又能够使平台的资源得到充分利用,最终调度结果队列中每个作业带都有最优开始时间。
在本实施例中,所述第一调度模块中包括第一作业调度器和第一资源调度器,所述第二调度模块中包括第二作业调度器和第二资源调度器。作业的调度都是通过作业调度器协助完成,当作业调度器生成一个最优的作业执行队列以后,便开始根据每个作业的最优开始时间启动作业;作业启动后,资源调度器开始为每个作业分配资源并执行,如图5下部所示,作业可以从不同的节点获取资源,并且可以运行在不同的节点上。
实施例3:
在本实施例3中分别从平均作业大小、作业集规模、平台资源总数以及作业紧迫程度等各个因素对算法的影响,将发明实施例1和实施例2中的面向大数据平台的两阶段作业调度方法及***与EDF算法和Hadoop中原有的FIFO调度算法进行综合性能对比。
平台配置:
在本实施例中,在一个基于MapReduce计算框架的大数据平台中对本发明以及对比例1和对比例2进行实验。
平台中包含1个主节点和20个配置信息相同的从节点。每个节点的配置信息为CPUInter(R)Core(TM)i5-2400 3.10GHz,memory 8GB,hard disk 1TB,Red Hat EnterpriseLinux6.2System,Hadoop版本为2.7.1。我们用Container个数来代表计算资源数,每个Container大小为1核2G内存,这样每个节点上有4个Container,整个平台中共有80个Container。
对比算法:
为了验证本发明实施例1和实施例2中的面向大数据平台的两阶段作业调度方法及***的有效性,实验中将本发明提出的两阶段调度算法-TPS(two-phase schedule)与EDF算法和Hadoop中原有的FIFO调度算法进行综合性能对比。
EDF算法是经典的针对有截止时间约束的作业调度算法,该算法的原理是基于截止时间先后确定作业执行顺序,优先执行截止时间早的作业。在执行过程中,为避免作业间争抢资源导致的作业执行时间延长,在本实施例的各个对比例中设置当平台中剩余资源不小于作业的资源需求时才启动作业。
FIFO调度算法中,作业按照优先级大小(或提交时间的先后)的顺序执行,作业间不能并行执行。在本文的测试中,作业将按照收益比(收益值与资源需求的比值)大小确定优先级以与本文中提出的算法进行对比。
测试作业和数据:
实验使用经典的MapReduce作业Sort和Grep作为输入作业进行测试。
评价指标:
本实施例将通过平台资源利用率、作业完成率、平台收益三个指标对算法进行评价,三个指标的计算公式如下:
平台资源利用率=作业执行所用的资源数/平台资源总数。
作业完成率=按时完成的作业数目/待调度作业总数。
平台收益=按时完成的作业的收益-未按时完成作业的赔付金额。
实验设计:
实验时考虑平均作业大小、作业集规模、平台资源总数以及作业紧迫程度等各个因素对算法的影响,分别进行实验分析:
实验(1)为测试平均作业大小对算法的影响,我们使用作业的数据块数作为评估作业大小的标准,设置作业总数固定为30,分别测试作业的平均数据块数个数为20、40、80、100、200时算法的性能。
实验(2)为测试作业集规模对算法的影响,设置作业的平均大小固定为40,分别测试作业集中作业数量为10、20、30、40时算法的性能。
实验(3)为测试平台资源总数对算法的影响,使用Container数目作为评估平台资源总数的标准,设置作业数量和平均大小分别固定为20、40,分别测试Container数目为4、8、16、32、48、64、80时算法的性能。
实验(4)为测试作业紧迫程度对算法的影响,使用作业截止时间的距离长度与作业执行长度的比值作为评估紧迫程度的标准,该比值越大,说明作业紧迫程度越低。设置作业数量和平均大小分别固定为20、40,分别测试平均紧迫程度为3、4、5、6、7时算法的性能。
由于本发明中的调度算法复杂度较高,在进行调度时需要消耗一定量的时间,而FIFO调度和EDF调度几乎不存在调度时间,因此在进行算法比较时需要算法的执行时间考虑在内。
实验结果分析:
(1)平均作业大小对调度算法的影响
如图6-8所示,本实施例首先进行实验(1),测试平均作业大小对算法性能的影响。
如图6所示,实验(1)测试了平均作业大小对资源利用率的影响,由实验结果可知,作业数量比较小时,FIFO调度因为作业串行执行而资源利用率很低,而TPS和EDF算法因为作业并行资源利用率较高且因为EDF算法只考虑截止时间因素因而其资源利用率低于TPS算法;随着作业大小的增加,FIFO调度的资源利用率会增加而TPS算法和EDF算法则由于作业增大,调度产生的资源碎片也会增多因而资源利用率会有所降低;最后,当作业大小达到一定程度后,平台资源不能满足作业并行的需求,经三个算法调度后的作业都将是串行执行,因而三个算法的资源利用率会大致相同。
如图7所示,实验(1)还测试了作业完成率与平均作业大小的关系,由于完成时限不变,***在固定时间段内的计算能力一定,因此,随着作业增大,3种算法的作业完成率都有明显的降低,但是由于EDF算法只考虑截止时间因素而TPS算法要兼顾平台收益,因而EDF算法作业完成率稍高于TPS算法,而FIFO算法只考虑收益,因此这种算法的作业完成率最低。
如图8所示,实验(1)还测试了平均作业大小对总收益的影响,其中FIFO因其资源利用率低,所以前期收益最小,EDF算法虽然作业完成率略高于TPS算法,但是由于TPS考虑了作业的收益,因此TPS算法的作业收益略大于EDF算法,随着作业大小的增加,由于作业完成率的降低,三种算法的作业收益都有所下降,TPS算法的收益一直大于其他两种算法。
(2)作业集规模对调度算法的影响
如图9-11所示,本实施例进行实验(2),测试作业集规模对调度算法性能的影响。
如图9所示,实验(2)测试了作业集规模对资源利用率的影响,由实验结果可知,三种算法的计算资源利用率受作业集规模的影响不大,其资源利用率虽作业规模的增大没有发生显著的变化。三种算法中TPS算法利用率最高,EDF算法的资源利用率略低于TPS算法,FIFO算法资源利用率最低。
如图10所示,实验(2)还测试了作业集规模对作业完成率的影响,由于计算能力有限,在作业集规模增大时,三种算法的作业完成率有所降低,其原因与作业大小对作业完成率以及总收益的影响相同,此处不再赘述。
如图11所示,实验(2)还测试了平作业集规模对收益的影响,由实验结果可知,在作业集规模增大时,三种算法的收益都呈现出先增加后减少的趋势,其原因是,在作业数在平台计算能力以内时,作业增加,平台可完成的作业也有所增加因而可以获得更多的收益,然而随着作业数超出平台计算能力,作业数增加时,未按时完成的作业增多,因为这些未完成作业获得的是负收益,因而总收益反而降低了。三种算法中FIFO算法因资源利用率低,因此作业完成率和收益都是最小的,而EDF算法和TPS算法因为资源利用率高,当作业数在平台计算能力范围内时,两种算法的作业完成率和收益都大致相同,随作业数继续增多,由于EDF算法只考虑作业的截止时间因素而TPS算法优先完成收益大的作业,因而EDF算法的作业完成率虽然略高于TPS算法但是TPS算法作业收益却远大于EDF算法的收益。
(3)计算资源数量对调度算法的影响
如图12-14所示,本实施例进行实验(3),测试作业集规模对调度算法性能的影响。
如图12所示,实验(3)测试了计算资源数对资源利用率的影响,由实验结果可知,当计算资源较少时,三种算法的资源浪费率大致相同且随着计算资源数量增多而减少,然而当计算资源数量减少到一定程度后,FIFO算法的资源利用率继续随着计算资源数量的增加而减少,而EDF和TPS的资源利用率却随着计算资源数量增加而增加,且TPS涨幅大于EDF的涨幅。出现上述现象的原因是,计算资源数量少时,三种算法调度后的作业都是基本都是串行执行因此资源利用率相似且随着资源增加而减少;当Container数量继续增大至大于平均作业大小后EDF和TPS算法调度后的作业可能会并行执行,因而资源利用率有所增加,由于TPS算法在作业调度时兼顾了平台资源利用率信息,而EDF算法只是单纯的根据截止时间调度,因而TPS算法资源利用率大于EDF算法。
如图13所示,实验(3)还测试了计算资源数对作业完成率的影响;如图14所示,实验(3)还测试了计算资源数对收益的影响,由实验结果可知,随着计算资源数量的增加TPS算法和EDF算法的作业完成率和收益都有所增加,且TPS算法的收益远大于EDF算法;而FIFO算法在平台资源较少时作业完成率和收益都随着资源的增加而增加,然而当平台资源大于平均作业大小后,由于作业串行执行,大量的资源被浪费,因而作业完成率和收益不在随着资源的增加而增加,而是稳定在一个固定值。
(4)作业紧迫程度对调度算法的影响
如图15所示,本实施例进行实验(4),测试作业紧迫程度对三个算法的影响。由于随着紧迫程度的降低,在作业数量等信息不变的情况下,作业有更多的时间可执行,因而三种算法的完成率和收益都必然有所增加,因而此处实验只测试作业紧迫程度对资源利用率的影响。由图中实验结果可知,FIFO算法和EDF算法的资源利用率基本不受作业紧迫程度的影响,而TPS算法的资源利用率则随紧迫程度的变低而增加。其原因是FIFO算法和EDF算法中只关心作业的收益或者作业间截止时间的先后关系,而TPS算法在满足收益的前提下要考虑资源的利用率,在作业的紧迫程度变低时,资源利用率最大化算法中作业的自由度更高,因而可以更好地对作业的开始时间进行调整以使其资源利用率最大。
本发明的有益效果:
本发明的一种面向大数据平台的两阶段作业调度方法及***,基于MapReduce计算框架,针对有截止时间约束的作业提出一种两阶段作业调度***和方法。在第一阶段提出一种基于作业最晚开始时间的最大收益调度方法,该调度方法根据作业的截止时间约束以及作业的收益信息计算并调整每个作业的最晚开始时间,并根据调整结果进行资源预分配,以保证收益大的作业能够在截止时间前完成,以使平台总收益最大;在第二阶段,在保证平台收益最大的前提下,提出基于平台最大资源利用率的作业调度方法,以提高平台资源利用率。实验结果表明,本发明提出的两阶段作业调度方法不仅实现了平台收益最大化,而且也提高了平台的资源利用率,提升了平台的综合性能。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (8)

1.一种面向大数据平台的两阶段作业调度方法,其特征是:该方法包括以下步骤:
(1)将用户提交的作业形成待调度作业集合,基于作业最晚开始时间的最大收益调度:根据作业的截止时间对平台的资源进行预分配,并根据作业的收益比对资源预分配的结果进行调整和调度,得到使服务商的收益最大的资源预分配作业调度结果队列;
(2)基于平台最大资源利用率的作业调度:根据平台的资源使用情况,对步骤(1)的资源预分配作业调度结果队列进行微调整得到最终调度结果队列,保证平台收益最大的前提下使平台的资源利用率达到最高;
所述步骤(2)的基于平台最大资源利用率的作业调度的具体步骤为:
(2-1)初始化变量最终调度结果队列和T时刻;
(2-2)寻找能在T时刻执行且不与资源预分配结果P_R发生冲突的作业集;
(2-3)判断不与资源预分配结果P_R发生冲突的作业集是否为空集,若为空集,将T时刻设置为资源预分配结果P_R中下一个时间段的初始时间;若不为空集,则在作业集中选择使资源浪费率最小的作业,得到其最优开始时间,更新T时刻;
(2-4)重复执行步骤(2-2)-步骤(2-3),直到为每个作业都设置了一个最优开始时间,得到最终调度结果;
(2-5)输出最终调度结果;
所述步骤(2-3)的中的资源浪费率为经过调度后不可再利用资源与当前已用的计算资源之间的比值;
当前已用的计算资源为使用的计算资源与空闲计算资源的总和。
2.如权利要求1所述的一种面向大数据平台的两阶段作业调度方法,其特征是:所述步骤(1)的基于作业最晚开始时间的最大收益调度的具体步骤为:
(1-1)计算待调度作业集合中每个作业的初始最晚开始时间,并按照初始最晚开始时间对平台的资源进行资源预分配;
(1-2)根据资源预分配的分配结果,统计每个时间段需要的计算资源总数,得到资源预分配结果P_R;
(1-3)判断资源预分配结果P_R中是否存在超负荷时间段,若存在,进入步骤(1-4),若不存在,进入步骤(1-5);
(1-4)对资源预分配结果P_R中的超负荷时间段作业的初始最晚开始时间进行调整,并根据调整结果更新P_R,返回步骤(1-3);
(1-5)输出使服务商的收益最大的资源预分配结果P_R。
3.如权利要求2所述的一种面向大数据平台的两阶段作业调度方法,其特征是:所述步骤(1-1)中,按照初始最晚开始时间对平台的资源进行资源预分配的具体步骤为:
让每个作业在其初始最晚开始时间开始执行,得到当所有作业刚好在其截止时间完成时各个时间段需要的资源数;
所述作业的初始最晚开始时间为:对于待调度作业集合中的任意作业,当没有其他作业争用资源时,使作业恰好能在截止时间点完成的作业开始时间。
4.如权利要求2所述的一种面向大数据平台的两阶段作业调度方法,其特征是:所述步骤(1-3)中,判断资源预分配结果P_R中是否存在超负荷时间段即判断在某一时间段内运行的作业需要的计算资源数总和是否大于大数据平台的计算资源总数;若大于,则该时间段为超负荷时间段,否则,该时间段为正常负荷时间段;
所述大数据平台的计算资源总数为大数据平台中所有标准Container的数量。
5.如权利要求2所述的一种面向大数据平台的两阶段作业调度方法,其特征是:所述步骤(1-4)的具体步骤为:
(1-4-1)选取最后一个超负荷时间段,并获取在该时间段内执行的所有作业形成作业集;
(1-4-2)在作业集中选取一个最小真子集,最小真子集将作业集中所有作业的初始最晚开始时间提前至使该时间段为正常负荷状态的正常负荷时间段,将所有满足条件的最小真子集的集合组成该时间段的可行调整策略集合;
(1-4-3)根据评估函数评估可行调整策略集合中的每个可行调整策略的评估值,并选取最优的调整策略;
(1-4-4)根据最优的调整策略,对该策略中的作业的最初最晚开始时间进行调整,并根据调整后的作业的最初最晚开始时间更新资源预分配结果P_R。
6.如权利要求5所述的一种面向大数据平台的两阶段作业调度方法,其特征是:所述步骤(1-4-3)中的评估函数为:
Figure FDA0002383261500000031
其中,
Figure FDA0002383261500000032
为调整策略中所有作业的收益评估值的总和,
Figure FDA0002383261500000033
为当前时间段内所有作业的收益评估值的总和,lastsize为按该策略进行调整后,当前时间段剩余资源占平台计算资源总数的百分比,Sp为作业的收益评估值,Sp=|a-b|,a是作业按时完成时获得的收益值,b是作业未按时完成时获得的收益值。
7.一种面向大数据平台的两阶段作业调度***,该调度***基于如权利要求1-6任一所述的一种面向大数据平台的两阶段作业调度方法,其特征是:该***包括:
第一阶段调度模块,所述第一阶段调度模块用于将用户提交的作业形成待调度作业集合,基于每个作业的最晚开始时间约束和服务商的总体最大收益,采用基于作业最晚开始时间的最大收益调度对待调度作业集合中的作业进行第一次调整调度,得到使服务商的收益最大的资源预分配作业调度结果队列;
第二阶段调度模块,所述第二阶段调度模块用于根据平台的资源使用情况,对第一阶段调度模块的资源预分配作业调度结果队列进行微调整得到最终调度结果队列,最终调度结果队列保证平台收益最大的前提下使平台的资源利用率达到最高,又能够使平台的资源得到充分利用,最终调度结果队列中每个作业带都有最优开始时间;
基于平台最大资源利用率的作业调度的具体步骤为:
(2-1)初始化变量最终调度结果队列和T时刻;
(2-2)寻找能在T时刻执行且不与资源预分配结果P_R发生冲突的作业集;
(2-3)判断不与资源预分配结果P_R发生冲突的作业集是否为空集,若为空集,将T时刻设置为资源预分配结果P_R中下一个时间段的初始时间;若不为空集,则在作业集中选择使资源浪费率最小的作业,得到其最优开始时间,更新T时刻;
(2-4)重复执行步骤(2-2)-步骤(2-3),直到为每个作业都设置了一个最优开始时间,得到最终调度结果;
(2-5)输出最终调度结果;
所述步骤(2-3)的中的资源浪费率为经过调度后不可再利用资源与当前已用的计算资源之间的比值;
当前已用的计算资源为使用的计算资源与空闲计算资源的总和。
8.如权利要求7所述的一种面向大数据平台的两阶段作业调度***,其特征是:所述待调度作业集为:平台服务提供商在某个时间段内接收一批作业并与用户协商签订与作业相关的SLA协议,作业的集合为待调度作业集J,表示为J={j1,j2,…,jn},其中,n为J中作业的个数;
对于待调度作业集J中的任意作业ji,表示为ji=(ms,rs,mt,rt,dl,bf(t)),其中,ms为该作业的Map任务数;rs为该作业的Reduce任务数;mt为该作业Map任务的平均执行时间;rt为该作业Reduce任务的平均执行时间;dl为该作业的截止时间约束;bf(t)为该作业的收益函数;
所述第一阶段调度模块中包括第一作业调度器和第一资源调度器,所述第二阶段调度模块中包括第二作业调度器和第二资源调度器。
CN201710590748.5A 2017-07-19 2017-07-19 一种面向大数据平台的两阶段作业调度方法及*** Active CN107589985B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710590748.5A CN107589985B (zh) 2017-07-19 2017-07-19 一种面向大数据平台的两阶段作业调度方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710590748.5A CN107589985B (zh) 2017-07-19 2017-07-19 一种面向大数据平台的两阶段作业调度方法及***

Publications (2)

Publication Number Publication Date
CN107589985A CN107589985A (zh) 2018-01-16
CN107589985B true CN107589985B (zh) 2020-04-24

Family

ID=61041646

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710590748.5A Active CN107589985B (zh) 2017-07-19 2017-07-19 一种面向大数据平台的两阶段作业调度方法及***

Country Status (1)

Country Link
CN (1) CN107589985B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112328383A (zh) * 2020-11-19 2021-02-05 湖南智慧畅行交通科技有限公司 基于优先权的作业并发控制及调度算法
CN114690719B (zh) * 2021-12-21 2024-05-14 中国科学院沈阳自动化研究所 一种面向平台的高效信息物理生产***

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104778079A (zh) * 2014-01-10 2015-07-15 国际商业机器公司 用于调度、执行的装置和方法以及分布式***
CN105159769A (zh) * 2015-09-11 2015-12-16 国电南瑞科技股份有限公司 一种适用于计算能力异构集群的分布式作业调度方法
CN105718316A (zh) * 2014-12-01 2016-06-29 ***通信集团公司 一种作业调度的方法及装置
CN105721565A (zh) * 2016-01-29 2016-06-29 南京邮电大学 基于博弈的云计算资源分配方法和***
CN105740051A (zh) * 2016-01-27 2016-07-06 北京工业大学 基于改进的遗传算法的云计算资源调度实现方法
CN106293893A (zh) * 2015-06-26 2017-01-04 阿里巴巴集团控股有限公司 作业调度方法、装置及分布式***

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8752036B2 (en) * 2011-10-31 2014-06-10 Oracle International Corporation Throughput-aware software pipelining for highly multi-threaded systems
CN103077438A (zh) * 2012-12-27 2013-05-01 深圳先进技术研究院 一种调度多机器人的控制方法及***
CN104349459B (zh) * 2013-07-25 2019-04-19 索尼公司 在无线通信***中进行动态上行配置的方法、基站和终端
CN104317650B (zh) * 2014-10-10 2018-05-01 北京工业大学 一种面向Map/Reduce型海量数据处理平台的作业调度方法
CN104731662B (zh) * 2015-03-26 2018-02-23 华中科技大学 一种可变并行作业的资源分配方法
CN105808334B (zh) * 2016-03-04 2016-12-28 山东大学 一种基于资源重用的MapReduce短作业优化***及方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104778079A (zh) * 2014-01-10 2015-07-15 国际商业机器公司 用于调度、执行的装置和方法以及分布式***
CN105718316A (zh) * 2014-12-01 2016-06-29 ***通信集团公司 一种作业调度的方法及装置
CN106293893A (zh) * 2015-06-26 2017-01-04 阿里巴巴集团控股有限公司 作业调度方法、装置及分布式***
CN105159769A (zh) * 2015-09-11 2015-12-16 国电南瑞科技股份有限公司 一种适用于计算能力异构集群的分布式作业调度方法
CN105740051A (zh) * 2016-01-27 2016-07-06 北京工业大学 基于改进的遗传算法的云计算资源调度实现方法
CN105721565A (zh) * 2016-01-29 2016-06-29 南京邮电大学 基于博弈的云计算资源分配方法和***

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
An Ant Colony Optimization for Grid Task Scheduling with Multiple QoS Dimensions;J Hu等;《2009 Eighth International Conference on Grid and Cooperative Computing》;20090829;第415-419页 *
MapReduce集群中最大收益问题的研究;王习特等;《计算机学报》;20150131;第38卷(第1期);第109-121页 *
基于最小费用最大流的大规模资源调度方法;陈晓旭等;《软件学报》;20161129;第598-610页 *

Also Published As

Publication number Publication date
CN107589985A (zh) 2018-01-16

Similar Documents

Publication Publication Date Title
US10474504B2 (en) Distributed node intra-group task scheduling method and system
CN108345501B (zh) 一种分布式资源调度方法和***
US8997107B2 (en) Elastic scaling for cloud-hosted batch applications
CN107911478B (zh) 基于化学反应优化算法的多用户计算卸载方法及装置
US9575691B2 (en) Scheduling user requests in a distributed resource system having a plurality of schedulers and coordinators
US9218213B2 (en) Dynamic placement of heterogeneous workloads
CN112416585B (zh) 面向深度学习的gpu资源管理与智能化调度方法
CN111782355B (zh) 一种基于混合负载的云计算任务调度方法及***
CN108123998B (zh) 多云数据中心中面向延迟敏感应用的启发式请求调度方法
CN114610474B (zh) 一种异构超算环境下多策略的作业调度方法及***
CN108428051B (zh) 面向大数据平台基于最大化收益的MapReduce作业调度方法及装置
US20140137122A1 (en) Modified backfill scheduler and a method employing frequency control to reduce peak cluster power requirements
CN114968510A (zh) 一种基于改进蚁群算法的多目标动态任务调度方法和***
CN109710372B (zh) 一种基于猫头鹰搜索算法的计算密集型云工作流调度方法
CN113821318A (zh) 一种物联网跨域子任务组合协同计算方法及***
CN107589985B (zh) 一种面向大数据平台的两阶段作业调度方法及***
Derakhshan et al. Optimization of tasks in cloud computing based on MAX-MIN, MIN-MIN and priority
CN112860390A (zh) 作业调度程序、信息处理设备和作业调度方法
CN108958919B (zh) 一种云计算中有期限约束的多dag任务调度费用公平性评估方法
Karmakar et al. Resource scheduling for tasks of a workflow in cloud environment
CN112306642B (zh) 一种基于稳定匹配博弈理论的工作流调度方法
Du et al. Energy-efficient scheduling for best-effort interactive services to achieve high response quality
CN104731662B (zh) 一种可变并行作业的资源分配方法
Chen et al. Deadline-constrained MapReduce scheduling based on graph modelling
CN115098240B (zh) 一种多处理器应用调度方法和***及存储介质

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