作业调度的方法及装置制造方法及图纸

技术编号:18426048 阅读:23 留言:0更新日期:2018-07-12 01:55
本发明专利技术公开了一种作业调度的方法及装置,涉及互联网技术领域,为解决现有Hadoop集群中的非本地化计算存在数据迁移,数据迁移会造成时间的浪费,从而导致计算效率降低的问题而发明专利技术。本发明专利技术的方法包括:根据各任务调度Task Tracker节点的使用状态,选择空闲的Task Tracker节点;从空闲的Task Tracker节点中选择符合预设条件的目标Task Tracker节点;为所述目标Task Tracker节点查找目标作业;将所述目标作业调度至目标Task Tracker节点进行计算。本发明专利技术适合应用在Hadoop集群作业调度的过程中。

The method and device of job scheduling

The invention discloses a method and device for job scheduling, which involves the field of Internet technology to solve the data migration of the non localization computing in the existing Hadoop cluster, and the data migration will cause the waste of time, which leads to the reduction of computing efficiency. The method of the present invention includes selecting the idle Task Tracker node by scheduling the use state of the Task Tracker node according to each task; selecting the target Task Tracker node from the idle Task Tracker node; looking for the target operation for the target Task Tracker node; scheduling the target job to the mesh. The standard Task Tracker node is calculated. The invention is suitable for application in the process of Hadoop cluster job scheduling.

【技术实现步骤摘要】
作业调度的方法及装置
本专利技术涉及互联网
,尤其涉及一种作业调度的方法及装置。
技术介绍
在Hadoop集群中,调度器是一个非常重要的组件,它的作用是保证整个集群内有效地进行作业的调度与执行。在Hadoop集群中通常有多个队列,每个队列中又包含有用户提交的多个作业,每个作业代表一个应用,每个作业中可以包含多个任务。当调度器进行作业调度时,通常的调度方式为:按照预设规则选择一个队列,然后根据预设的条件对队列中的作业设置优先级,再按照优先级的次序调度作业,并为作业选择与之匹配的计算节点。通常匹配的计算节点是按照本地主机资源、同机架主机资源、其他机架主机资源的顺序进行选择的。然而上述常用的调度器的调度方式,会造成非本地化计算的增加。例如,当某一作业A被调度时,有可能对应的本地主机资源已经占满,无空闲计算节点,因此只能在同机架的其他主机或者不同机架的其他主机上选择空闲的计算节点进行计算。当作业量很大时,有可能将其他非本地主机的资源占满,这样就会造成本地主机计算的是非本地的作业,而本地作业无法在本地主机计算。然而非本地化计算由于存在数据迁移,数据迁移会造成时间的浪费,从而非本地化计算的增加必然会降低计算的效率。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的一种作业调度的方法及装置。为解决上述技术问题,一方面,本专利技术提供了一种作业调度的方法,该方法包括:根据各任务调度TaskTracker节点的使用状态,选择空闲的TaskTracker节点;从空闲的TaskTracker节点中选择符合预设条件的目标TaskTracker节点;为所述目标TaskTracker节点查找目标作业;将所述目标作业调度至目标TaskTracker节点进行计算。另一方面,本专利技术还提供了一种作业调度的装置,该装置包括:第一选择单元,用于根据各任务调度TaskTracker节点的使用状态,选择空闲的TaskTracker节点;第二选择单元,用于从空闲的TaskTracker节点中选择符合预设条件的目标TaskTracker节点;查找单元,用于为所述目标TaskTracker节点查找目标作业;计算单元,用于将所述目标作业调度至目标TaskTracker节点进行计算。借由上述技术方案,本专利技术提供的作业调度的方法及装置,能够根据各任务调度TaskTracker节点的使用状态,选择空闲的TaskTracker节点;并从空闲的TaskTracker节点中选择符合预设条件的目标TaskTracker节点;然后为目标TaskTracker节点查找目标作业;将目标作业调度至目标TaskTracker节点进行计算。与现有技术相比,本专利技术能够从TaskTracker节点的角度出发,通过TaskTracker节点来决定作业的调度顺序,而不是以作业的角度出发,按照作业的优先级来调度作业以及选择TaskTracker节点。以TaskTracker节点为出发点可以有更多的机会选择本地作业进行计算,因此可以有效地较少非本地化的计算,从而提高计算效率。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。附图说明通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1示出了本专利技术实施例提供的一种作业调度的方法流程图;图2示出了本专利技术实施例提供的另一种作业调度的方法流程图;图3示出了本专利技术实施例提供的一种作业调度的装置的组成框图;图4示出了本专利技术实施例提供的另一种作业调度的装置的组成框图。具体实施方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。为解决现有调度器的调度的方式导致Hadoop集群中计算效率低的问题,本专利技术实施例提供了一种作业调度的方法,如图1所示,该方法包括:首先需要说明的是,本实施例中的作业调度的方法能够应用于计算机CPU内存资源的调度中,本实施例以分布式集群中的计算资源为主来说明。在分布式集群中,可能同时运行多道作业,而且各作业的类型不同,而且作业之间还可能存在依赖关系,调度器是用来保证在整个集群内有效地进行作业的调度与执行过程的组件。101、根据各任务调度TaskTracker节点的使用状态,选择空闲的TaskTracker节点。其中,任务调度TaskTracker节点负责执行JobTracker节点分配的映射/归约(Map/Reduce)任务,JobTracker节点用来管理和调度用户提交的作业。通常TaskTracker节点的使用状态是由调度器程序中的作业控制JobTracker进行监控的,因此能够通过JobTracker获取到所有的TaskTracker节点的使用状态。TaskTracker节点的使用状态包括占用和空闲两种状态。选择空闲的TaskTracker节点是为了以TaskTracker节点为出发点,为其选择作业进行计算。102、从空闲的TaskTracker节点中选择符合预设条件的目标TaskTracker节点。由于当前空闲的TaskTracker节点可能有多个,因此需要从多个空闲的TaskTracker节点中选择出符合预设条件的一个TaskTracker节点作为目标TaskTracker节点。当预设条件为空闲TaskTracker节点中最久未使用的TaskTracker节点时,本实施例中目标TaskTracker节点为最久未使用的空闲TaskTracker节点。103、为目标TaskTracker节点查找目标作业。在选择出目标TaskTracker节点之后,以目标TaskTracker节点为出发点查找当前与其对应的目标作业。在查找目标作业时主要依据的原则是以目标TaskTracker节点为参照,依据本地作业优先的原则进行查找。104、将目标作业调度至目标TaskTracker节点进行计算。在查找到目标作业后,将目标作业调度至目标TaskTracker节点进行计算,并将该目标TaskTracker节点的状态改为占用,当完成当前作业的计算之后,该目标TaskTracker节点的状态变为空闲,然后继续等待被确定为目标TaskTracker节点后再次执行计算的任务。本实施例提供的作业调度的方法,能够根据各TaskTracker节点的使用状态,选择空闲的TaskTracker节点;并从空闲的TaskTracker节点中选择符合预设条件的目标TaskTracker节点;然后为目标TaskTracker节点查找目标作业;将目标作业调度至目标TaskTracker节点进行计算。与现有技术相比,本实施例能够从TaskTracker节点的角度出发,通过TaskTracker节点来决定作业的调度顺序,本文档来自技高网...

【技术保护点】
1.一种作业调度的方法,其特征在于,所述方法包括:根据各任务调度Task Tracker节点的使用状态,选择空闲的Task Tracker节点;从空闲的Task Tracker节点中选择符合预设条件的目标Task Tracker节点;为所述目标Task Tracker节点查找目标作业;将所述目标作业调度至目标Task Tracker节点进行计算。

【技术特征摘要】
1.一种作业调度的方法,其特征在于,所述方法包括:根据各任务调度TaskTracker节点的使用状态,选择空闲的TaskTracker节点;从空闲的TaskTracker节点中选择符合预设条件的目标TaskTracker节点;为所述目标TaskTracker节点查找目标作业;将所述目标作业调度至目标TaskTracker节点进行计算。2.根据权利要求1所述的方法,其特征在于,所述为所述目标TaskTracker节点查找目标作业,包括:若存在同主机作业,则按照优先级的顺序从所述同主机作业中查找目标作业,所述同主机作业为申请的资源是所述目标TaskTracker节点所属的主机的资源的作业;若不存在同主机作业,则按照优先级的顺序从同机架作业中查找目标作业,所述同机架作业为申请的资源是与所述目标TaskTracker节点所属的主机为同机架的其他主机的资源的作业。3.根据权利要求2所述的方法,其特征在于,所述为所述目标TaskTracker节点查找目标作业,还包括:若不存在同机架作业,则按照优先级顺序从最久未调度的作业中查找目标作业。4.根据权利要求2或3中任一所述的方法,其特征在于,在按照优先级顺序查找目标作业之前,所述方法进一步包括:根据当前时间与作业的提交时间之间的间隔时长、提交作业的用户的等级以及作业申请的资源量确定对应的作业的优先级。5.根据权利要求1所述的方法,其特征在于,在所述将所述目标作业调度至目标TaskTracker节点进行计算之后,所述方法进一步包括:判断是否存在未调度的作业;若存在未调度的作业,则继续选择目标TaskTracker节点;若不存在未调度的作业,则结束调度。6.一种作业调度的装置,其特征在于,所述装置包括...

【专利技术属性】
技术研发人员:薛戬
申请(专利权)人:北京国双科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1