CN103077083A - 一种任务处理的方法及系统 - Google Patents

一种任务处理的方法及系统 Download PDF

Info

Publication number
CN103077083A
CN103077083A CN2013100072768A CN201310007276A CN103077083A CN 103077083 A CN103077083 A CN 103077083A CN 2013100072768 A CN2013100072768 A CN 2013100072768A CN 201310007276 A CN201310007276 A CN 201310007276A CN 103077083 A CN103077083 A CN 103077083A
Authority
CN
China
Prior art keywords
task
dependence
processor
free time
time sheet
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.)
Pending
Application number
CN2013100072768A
Other languages
English (en)
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.)
SUZHOU YIBEI INFORMATION TECHNOLOGY Co Ltd
Original Assignee
SUZHOU YIBEI INFORMATION TECHNOLOGY Co Ltd
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 SUZHOU YIBEI INFORMATION TECHNOLOGY Co Ltd filed Critical SUZHOU YIBEI INFORMATION TECHNOLOGY Co Ltd
Priority to CN2013100072768A priority Critical patent/CN103077083A/zh
Publication of CN103077083A publication Critical patent/CN103077083A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本发明提供一种任务处理的方法及系统。上述方法包括以下步骤:客户端将任务提交至任务处理器;任务处理器将具有依赖关系的任务放入任务队列,并根据任务之间的依赖关系建立任务依赖对照表;任务处理器根据任务依赖对照表及第一策略,获得各个被依赖任务的空闲时间片分配总数;任务处理器根据任务依赖对照表、各个被依赖任务的空闲时间片分配总数及第二策略,确定各个被依赖任务对应的周期;任务处理器根据各个被依赖任务的空闲时间片分配总数及各个被依赖任务对应的周期,处理任务队列中具有依赖关系的任务。

Description

一种任务处理的方法及系统
技术领域
本发明属于计算机技术领域,尤其涉及一种任务处理的方法及系统。
背景技术
目前,在计算机技术领域,会遇到一个复杂的计算任务模型由多个有依赖关系的计算任务组成的情况。其中,依赖任务只能在被依赖任务完成后才能进行计算,而不具有依赖关系的计算任务可并行计算。对于这种任务模型,如何对任务进行资源分配,以获得最优的任务处理时间,是一个重要的问题。
发明内容
本发明提供一种任务处理的方法及系统,以解决上述问题。
本发明提供一种任务处理的方法。上述方法包括以下步骤:客户端将任务提交至任务处理器;任务处理器将具有依赖关系的任务放入任务队列,并根据任务之间的依赖关系建立任务依赖对照表;任务处理器根据任务依赖对照表及第一策略,获得各个被依赖任务的空闲时间片分配总数;任务处理器根据任务依赖对照表、各个被依赖任务的空闲时间片分配总数及第二策略,确定各个被依赖任务对应的周期;任务处理器根据各个被依赖任务的空闲时间片分配总数及各个被依赖任务对应的周期,处理任务队列中具有依赖关系的任务。
本发明还提供一种任务处理的系统,包括客户端及任务处理器。客户端连接任务处理器。其中,客户端将任务提交至任务处理器。任务处理器将具有依赖关系的任务放入任务队列,并根据任务之间的依赖关系建立任务依赖对照表。任务处理器根据任务依赖对照表及第一策略,获得各个被依赖任务的空闲时间片分配总数。任务处理器根据任务依赖对照表、各个被依赖任务的空闲时间片分配总数及第二策略,确定各个被依赖任务对应的周期。任务处理器根据各个被依赖任务的空闲时间片分配总数及各个被依赖任务对应的周期,处理任务队列中具有依赖关系的任务。
相较于先前技术,根据本发明提供的任务处理的方法及系统,任务处理器根据任务依赖对照表及第一策略,获得各个被依赖任务的空闲时间片分配总数。而且,任务处理器根据任务依赖对照表、各个被依赖任务的空闲时间片分配总数及第二策略,确定各个被依赖任务对应的周期。此外,任务处理器根据各个被依赖任务的空闲时间片分配总数及各个被依赖任务对应的周期,处理任务队列中具有依赖关系的任务。如此,提高了具有依赖关系的任务的资源分配效率,使得具有依赖关系的任务得到了更好的执行,提高了效率。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1所示为根据本发明的较佳实施例提供的任务处理的方法的流程图;
图2所示为根据本发明的较佳实施例提供的任务处理的系统的示意图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
图1所示为根据本发明的较佳实施例提供的任务处理的方法的流程图。如图1所示,本发明的较佳实施例提供的任务处理的方法包括步骤101~105。
于步骤101,客户端将任务提交至任务处理器。于此,任务包括具有依赖关系的任务及相互独立的任务。然而,本发明对此并不限定。
于步骤102,所述任务处理器将具有依赖关系的任务放入任务队列,并根据任务之间的依赖关系建立任务依赖对照表。于此,任务队列中的任务,按照依赖关系排序,被依赖任务优先被执行。
于本实施例中,任务处理器建立的任务依赖对照表例如表1所示。然而,本发明对此并不限定。
被依赖任务 依赖任务
任务1 任务4、任务5、任务6
任务2 任务5、任务6
任务3 任务6
表1
于步骤103,所述任务处理器根据所述任务依赖对照表及第一策略,获得各个被依赖任务的空闲时间片分配总数。
于此,所述第一策略为:所述任务处理器根据所述任务依赖对照表分别计算各个被依赖任务对应的依赖任务占比,根据各个被依赖任务对应的依赖任务占比及当前时刻的系统空闲时间片的总量,计算获得各个被依赖任务的空闲时间片分配总数。其中,各个被依赖任务对应的依赖任务占比为相应的被依赖任务对应的依赖任务数目与任务总数的比值。各个被依赖任务的空闲时间片分配总数为相应的被依赖任务的依赖任务占比与当前时刻的系统空闲时间片总量的乘积。
于本实施例中,以表1为例进行说明,由表1可知,当前任务总数为6个。此外,例如当前时刻的系统空闲时间片总量为a,则被依赖任务1的依赖任务占比=3/6=0.5,且被依赖任务1的空闲时间片分配总数=0.5*a;被依赖任务2的依赖任务占比=2/6=1/3,且被依赖任务2的空闲时间片分配总数=(1/3)*a;被依赖任务3的依赖任务占比=1/6,且被依赖任务3的空闲时间片分配总数=(1/6)*a。
于步骤104,所述任务处理器根据所述任务依赖对照表、各个被依赖任务的空闲时间片分配总数及第二策略,确定各个被依赖任务对应的周期。
于此,所述第二策略为:各个被依赖任务对应的周期根据各个被依赖任务的空闲时间片分配总数及各个被依赖任务对应的依赖任务个数确定。具体而言,各个被依赖任务对应的周期等于相应被依赖任务的空闲时间片分配总数与相应被依赖任务对应的依赖任务个数的比值。然而,本发明对此并不限定。于其他实施例中,各个被依赖任务对应的周期还可以等于相应被依赖任务的空闲时间片分配总数与预设常数的比值。其中,所述预设常数的设置可根据实际需要进行设定。
于本实施例中,仍以步骤102中的表1为例进行说明。任务处理器根据存储的任务依赖对照表(即,表1),计算获得的被依赖任务1~3对应的空闲时间片分配总数,参照第二策略可知,被依赖任务1对应的周期T1=0.5*a/3=(1/6)*a,被依赖任务2对应的周期T2=(1/3)*a/2=(1/6)*a,被依赖任务3对应的周期T3=(1/6)*a。
于步骤105,所述任务处理器根据各个被依赖任务的空闲时间片分配总数及各个被依赖任务对应的周期,处理所述任务队列中具有依赖关系的任务。
于本实施例中,任务处理器根据被依赖任务一个周期反馈的结果判断是否能够处理任务队列中的依赖任务,若不能处理,则继续等待被依赖任务下一个周期反馈的结果,直至依赖任务能够处理为止。
于本实施例中,仍以步骤102中的表1为例进行说明。于此,任务处理器根据被依赖任务1反馈的结果判断是否能够继续处理依赖任务4、依赖任务5或依赖任务6。若不能继续处理依赖任务4、依赖任务5或依赖任务6,则任务处理器删除被依赖任务1反馈的结果,且任务处理器根据被依赖任务1下一个周期T1反馈的结果,再判断依赖任务4、依赖任务5或依赖任务6是否能够处理。上述过程直至依赖任务4、依赖任务5或依赖任务6能够处理为止。若任务处理器例如根据被依赖任务1反馈的结果判断得到依赖任务5能够处理,则开始依赖任务5的部分处理,此时,任务处理器暂存接收到的被依赖任务2反馈的结果,并于依赖任务5的部分处理完成后,根据被依赖任务2反馈的结果判断依赖任务5能否继续处理,若能够继续处理,则任务处理器继续处理依赖任务5,若根据被依赖任务2反馈的结果判断不能继续处理依赖任务5,则任务处理器删除暂存的被依赖任务2反馈的结果,等待被依赖任务2下一个周期T2反馈的结果,再继续进行判断,直至依赖任务5能够处理为止。此外,依赖任务6的处理过程同依赖任务5,故于此不再赘述。
例如:被依赖任务1为更新数据表a、b、c、d;被依赖任务2为更新数据表e、f、g、h;依赖任务5为查询数据表a、g;若被依赖任务1在第一个周期T1时,完成数据表a的更新;被依赖任务2在第一个周期T2时,完成数据表e的更新,则任务处理器根据被依赖任务1反馈的结果(数据表a的更新),判断依赖任务5能够处理,则开始任务5的部分处理(查询数据表a);此时,任务处理器暂存接收到的被依赖任务2反馈的结果(数据表e的更新)。于依赖任务5的部分处理(查询数据表a)完成后,任务处理器根据被依赖任务2反馈的结果(数据表e的更新),判断依赖任务5不能继续处理,则任务处理器删除暂存的被依赖任务2反馈的结果(数据表e的更新),等待被依赖任务2下一个周期T2反馈的结果,再继续进行判断,直至依赖任务5能够处理为止。
此外,于本实施例中,若任务队列中的任一被依赖任务完成,则任务处理器更新任务依赖对照表。仍以步骤102中的表1为例,若被依赖任务3完成,则任务处理器更新表1,得到例如表2所示。
被依赖任务 依赖任务
任务1 任务4、任务5、任务6
任务2 任务5、任务6
表2
此时,任务处理器根据更新的任务依赖对照表(即表2)及第一策略,重新获得各个被依赖任务的空闲时间片分配总数,并根据表2、各个被依赖任务的空闲时间片分配总数及第二策略,重新获得各个被依赖任务对应的周期。之后,任务处理器根据更新的各个被依赖任务的空闲时间片分配总数及对应的周期,处理任务队列中具有依赖关系的任务,直至将任务队列中的任务全部处理。
图2所示为根据本发明的较佳实施例提供的任务处理的系统的示意图。如图2所示,本发明的较佳实施例提供的任务处理的系统包括客户端10及任务处理器12。其中,客户端10连接任务处理器12。
于本实施例中,客户端10将任务提交至任务处理器12。任务处理器12将具有依赖关系的任务放入任务队列,并根据任务之间的依赖关系建立任务依赖对照表。任务处理器12根据任务依赖对照表及第一策略,获得各个被依赖任务的空闲时间片分配总数。任务处理器12根据任务依赖对照表、各个被依赖任务的空闲时间片分配总数及第二策略,确定各个被依赖任务对应的周期。任务处理器12根据各个被依赖任务的空闲时间片分配总数及各个被依赖任务对应的周期,处理任务队列中具有依赖关系的任务。关于上述系统的具体操作过程同上述方法所述,故于此不再赘述。
综上所述,根据本发明较佳实施例提供的任务处理的方法及系统,任务处理器根据任务依赖对照表及第一策略,获得各个被依赖任务的空闲时间片分配总数。而且,任务处理器根据任务依赖对照表、各个被依赖任务的空闲时间片分配总数及第二策略,确定各个被依赖任务对应的周期。此外,任务处理器根据各个被依赖任务的空闲时间片分配总数及各个被依赖任务对应的周期,处理任务队列中具有依赖关系的任务。如此,提高了具有依赖关系的任务的资源分配效率,使得具有依赖关系的任务得到了更好的执行,提高了效率。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种任务处理的方法,其特征在于,包括以下步骤:
客户端将任务提交至任务处理器;
所述任务处理器将具有依赖关系的任务放入任务队列,并根据任务之间的依赖关系建立任务依赖对照表;
所述任务处理器根据所述任务依赖对照表及第一策略,获得各个被依赖任务的空闲时间片分配总数;
所述任务处理器根据所述任务依赖对照表、各个被依赖任务的空闲时间片分配总数及第二策略,确定各个被依赖任务对应的周期;
所述任务处理器根据各个被依赖任务的空闲时间片分配总数及各个被依赖任务对应的周期,处理所述任务队列中具有依赖关系的任务。
2.根据权利要求1所述的方法,其特征在于,所述第一策略为:所述任务处理器根据所述任务依赖对照表分别计算各个被依赖任务对应的依赖任务占比,根据各个被依赖任务对应的依赖任务占比及当前时刻的系统空闲时间片的总量,计算获得各个被依赖任务的空闲时间片分配总数。
3.根据权利要求1所述的方法,其特征在于,所述第二策略为:各个被依赖任务对应的周期根据各个被依赖任务的空闲时间片分配总数及各个被依赖任务对应的依赖任务个数确定。
4.根据权利要求1所述的方法,其特征在于,所述任务队列中的任务,按照依赖关系排序,被依赖任务优先被执行。
5.根据权利要求1所述的方法,其特征在于,所述任务处理器根据被依赖任务一个周期反馈的结果判断是否能够处理所述任务队列中的依赖任务,若不能处理,则继续等待所述被依赖任务下一个周期反馈的结果,直至所述依赖任务能够处理为止。
6.根据权利要求1所述的方法,其特征在于,若所述任务队列中的任一被依赖任务完成,则所述任务处理器更新所述任务依赖对照表。
7.一种任务处理的系统,其特征在于,包括客户端及任务处理器,所述客户端连接所述任务处理器,
其中,所述客户端将任务提交至所述任务处理器,
所述任务处理器将具有依赖关系的任务放入任务队列,并根据任务之间的依赖关系建立任务依赖对照表,
所述任务处理器根据所述任务依赖对照表及第一策略,获得各个被依赖任务的空闲时间片分配总数,
所述任务处理器根据所述任务依赖对照表、各个被依赖任务的空闲时间片分配总数及第二策略,确定各个被依赖任务对应的周期,
所述任务处理器根据各个被依赖任务的空闲时间片分配总数及各个被依赖任务对应的周期,处理所述任务队列中具有依赖关系的任务。
8.根据权利要求7所述的系统,其特征在于,所述第一策略为:所述任务处理器根据所述任务依赖对照表分别计算各个被依赖任务对应的依赖任务占比,根据各个被依赖任务对应的依赖任务占比及当前时刻的系统空闲时间片的总量,计算获得各个被依赖任务的空闲时间片分配总数。
9.根据权利要求7所述的系统,其特征在于,所述第二策略为:各个被依赖任务对应的周期根据各个被依赖任务的空闲时间片分配总数及各个被依赖任务对应的依赖任务个数确定。
10.根据权利要求7所述的系统,其特征在于,所述任务队列中的任务,按照依赖关系排序,被依赖任务优先被执行。
CN2013100072768A 2013-01-09 2013-01-09 一种任务处理的方法及系统 Pending CN103077083A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2013100072768A CN103077083A (zh) 2013-01-09 2013-01-09 一种任务处理的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2013100072768A CN103077083A (zh) 2013-01-09 2013-01-09 一种任务处理的方法及系统

Publications (1)

Publication Number Publication Date
CN103077083A true CN103077083A (zh) 2013-05-01

Family

ID=48153618

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2013100072768A Pending CN103077083A (zh) 2013-01-09 2013-01-09 一种任务处理的方法及系统

Country Status (1)

Country Link
CN (1) CN103077083A (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014108000A1 (zh) * 2013-01-09 2014-07-17 苏州亿倍信息技术有限公司 一种任务分配处理的方法及系统
CN104317659A (zh) * 2014-10-22 2015-01-28 北京亿华通科技有限公司 巡检方法和装置
CN105045659A (zh) * 2015-07-17 2015-11-11 中国人民解放军国防科学技术大学 一种云中基于任务重叠与虚拟机迁移的容错任务调度方法
CN105320561A (zh) * 2015-11-09 2016-02-10 深圳市万普拉斯科技有限公司 任务管理方法和系统
CN107203633A (zh) * 2017-05-31 2017-09-26 北京京东尚科信息技术有限公司 数据表推数处理方法、装置及电子设备
CN107491347A (zh) * 2016-06-12 2017-12-19 阿里巴巴集团控股有限公司 一种用于虚拟机热迁移的方法与设备
CN107885587A (zh) * 2017-11-17 2018-04-06 清华大学 一种大数据分析流程的执行计划生成方法
CN108108235A (zh) * 2017-12-07 2018-06-01 北京荣之联科技股份有限公司 任务处理方法及装置
CN108958940A (zh) * 2018-07-09 2018-12-07 苏州浪潮智能软件有限公司 一种计算机处理方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6421702B1 (en) * 1998-06-09 2002-07-16 Advanced Micro Devices, Inc. Interrupt driven isochronous task scheduler system
CN101692208A (zh) * 2009-10-15 2010-04-07 北京交通大学 实时交通信息处理的任务调度方法与系统
CN101743534A (zh) * 2007-07-16 2010-06-16 微软公司 通过增长和收缩资源分配来进行调度
US20110099551A1 (en) * 2009-10-26 2011-04-28 Microsoft Corporation Opportunistically Scheduling and Adjusting Time Slices
CN102508716A (zh) * 2011-09-29 2012-06-20 用友软件股份有限公司 任务控制装置和任务控制方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6421702B1 (en) * 1998-06-09 2002-07-16 Advanced Micro Devices, Inc. Interrupt driven isochronous task scheduler system
CN101743534A (zh) * 2007-07-16 2010-06-16 微软公司 通过增长和收缩资源分配来进行调度
CN101692208A (zh) * 2009-10-15 2010-04-07 北京交通大学 实时交通信息处理的任务调度方法与系统
US20110099551A1 (en) * 2009-10-26 2011-04-28 Microsoft Corporation Opportunistically Scheduling and Adjusting Time Slices
CN102508716A (zh) * 2011-09-29 2012-06-20 用友软件股份有限公司 任务控制装置和任务控制方法

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014108000A1 (zh) * 2013-01-09 2014-07-17 苏州亿倍信息技术有限公司 一种任务分配处理的方法及系统
CN104317659A (zh) * 2014-10-22 2015-01-28 北京亿华通科技有限公司 巡检方法和装置
CN105045659A (zh) * 2015-07-17 2015-11-11 中国人民解放军国防科学技术大学 一种云中基于任务重叠与虚拟机迁移的容错任务调度方法
CN105045659B (zh) * 2015-07-17 2018-01-05 中国人民解放军国防科学技术大学 一种云中基于任务重叠与虚拟机迁移的容错任务调度方法
CN105320561B (zh) * 2015-11-09 2019-03-08 深圳市万普拉斯科技有限公司 任务管理方法和系统
CN105320561A (zh) * 2015-11-09 2016-02-10 深圳市万普拉斯科技有限公司 任务管理方法和系统
US10802877B2 (en) 2015-11-09 2020-10-13 Oneplus Technology (Shenzhen) Co., Ltd. Task management methods and system, and computer storage medium
CN107491347B (zh) * 2016-06-12 2021-04-27 阿里巴巴集团控股有限公司 一种用于虚拟机热迁移的方法与设备
CN107491347A (zh) * 2016-06-12 2017-12-19 阿里巴巴集团控股有限公司 一种用于虚拟机热迁移的方法与设备
CN107203633B (zh) * 2017-05-31 2020-09-01 北京京东尚科信息技术有限公司 数据表推数处理方法、装置及电子设备
CN107203633A (zh) * 2017-05-31 2017-09-26 北京京东尚科信息技术有限公司 数据表推数处理方法、装置及电子设备
CN107885587B (zh) * 2017-11-17 2018-12-07 清华大学 一种大数据分析流程的执行计划生成方法
CN107885587A (zh) * 2017-11-17 2018-04-06 清华大学 一种大数据分析流程的执行计划生成方法
CN108108235A (zh) * 2017-12-07 2018-06-01 北京荣之联科技股份有限公司 任务处理方法及装置
CN108108235B (zh) * 2017-12-07 2021-10-29 哈勃智远(北京)科技有限公司 任务处理方法及装置
CN108958940A (zh) * 2018-07-09 2018-12-07 苏州浪潮智能软件有限公司 一种计算机处理方法及装置

Similar Documents

Publication Publication Date Title
CN103064745B (zh) 一种任务分配处理的方法及系统
CN103077083A (zh) 一种任务处理的方法及系统
US20180357610A1 (en) Method and system for collaborative scheduling of production and transportation based on shuffled frog leaping and path relinking algorithms
TWI547817B (zh) 叢集運算架構的資源規劃方法、系統及裝置
CN102521055B (zh) 一种虚拟机资源分配方法及其系统
CN103077086A (zh) 一种任务分配控制的方法及系统
US9218210B2 (en) Distributed processing system
CN103401939A (zh) 一种采用混合调度策略的负载均衡方法
CN109032769B (zh) 一种基于容器的持续集成ci任务处理方法及装置
WO2008126221A1 (ja) ソフトウェア修正管理プログラム、ソフトウェア修正管理装置、およびソフトウェア修正管理方法
CN110347515B (zh) 一种适合边缘计算环境的资源优化分配方法
Zhang et al. Asynchronous distributed semi-stochastic gradient optimization
CN108270805A (zh) 用于数据处理的资源分配方法及装置
CN104881322A (zh) 一种基于装箱模型的集群资源调度方法及装置
CN104462302A (zh) 一种分布式数据处理协调方法及系统
CN103257896B (zh) 一种云环境下的Max-D作业调度方法
CN106354552B (zh) 并行计算任务分配方法和装置
CN103002053B (zh) 云计算的利润最大化调度方法和系统
CN103383654B (zh) 调节mapper在多核上执行的方法及装置
CN103077084A (zh) 一种任务控制的方法及系统
CN103077085A (zh) 一种任务分配的方法及系统
CN108429784B (zh) 一种能效优先的云资源分配与调度方法
CN107526632B (zh) 进程池扩充方法和装置
CN107291843A (zh) 基于分布式计算平台的层次聚类改进方法
CN104915250B (zh) 一种实现作业内的MapReduce数据本地化的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20130501