本发明涉及任务处理,尤其涉及一种任务调度方法及装置。
背景技术:
1、在大数据生产处理过程中充斥着复杂的抽取(extract)、转换(transform)、加载(load)操作。而规模稍大的数据平台中一般会使用一套任务调度系统来管理复杂任务的执行时机、错误处理等任务。分布式任务调度系统即是利用多台服务器协作完成这一系列任务的任务调度系统。
2、然而,现有的分布式任务调度系统只具备定时触发功能和任务分发功能,即现有的分布式任务调度系统只负责定时将待执行任务分发至指定服务器上执行,对于待执行任务的执行权限和资源管控没有特殊控制,导致服务器中多个任务的执行权限相互之间存在干扰,比如大型的数据迁移任务或机器学习类任务等,不仅需要耗费大量的内存、带宽,还需要耗费cpu、gpu来进行计算,而当在同一服务器中执行多个任务时,各任务的执行权限可能存在交叉,从而容易对服务器中的剩余空间进行无预期的资源争抢,进而影响服务器运行安全。
技术实现思路
1、鉴于上述问题,本发明提供一种任务调度方法及装置,主要目的是避免服务器各任务的执行权限存在干扰而导致各任务对服务器中的剩余空间进行无预期的资源争抢,以保证服务器的运行安全。
2、为解决上述技术问题,本发明提出以下方案:
3、第一方面,本发明提供了一种任务调度方法,所述方法包括:
4、从执行队列中获取待执行任务;
5、解析所述待执行任务中的执行资源要求,并根据所述执行资源要求匹配对应的目标服务器;
6、若匹配成功,则将所述待执行任务处理为可执行体,所述可执行体用于在所述目标服务器中以指定资源执行所述待执行任务;
7、将所述可执行体发送给所述目标服务器。
8、第二方面,本发明提供了一种任务调度装置,所述装置包括:
9、获取单元,用于从执行队列中获取待执行任务;
10、解析单元,用于解析所述获取单元获得的待执行任务中的执行资源要求;
11、匹配单元,用于根据所述解析单元中读取的执行资源要求匹配对应的目标服务器;
12、处理单元,用于若所述匹配单元中执行资源要求匹配对应的目标服务器匹配成功,则将所述待执行任务处理为可执行体,所述可执行体用于在所述目标服务器中以指定资源执行所述待执行任务;
13、发送单元,用于将所述可执行体发送给所述目标服务器。
14、为了实现上述目的,根据本发明的第三方面,提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述第一方面的任务调度方法。
15、为了实现上述目的,根据本发明的第四方面,提供了一种电子设备,设备包括至少一个处理器、以及与处理器连接的至少一个存储器、总线;其中,处理器、存储器通过总线完成相互间的通信;处理器用于调用存储器中的程序指令,以执行上述第一方面的任务调度方法。
16、借由上述技术方案,本发明提供的一种任务调度方法及装置,是在需要对待执行任务进行调度处理时,可以先从执行队列中获取待执行任务,解析待执行任务中的执行资源要求,再根据解析出来的执行资源要求判断待执行任务是否具有能够匹配对应的目标服务器,即确定服务器中是否存在有能力执行待执行任务的目标服务器,若匹配成功,则将待执行任务处理为可以在匹配到的目标服务器中以指定资源执行待执行任务的可执行体,以便待执行任务发送给目标服务器后,各个待执行任务均可在目标服务器中以指定资源执行,最后将可执行体发送给目标服务器,以使得目标服务器运行待执行任务。通过本发明提供的技术方案,可以避免服务器中各任务的执行权限存在干扰,从而解决各任务之间在服务器中执行时发生资源抢占的问题,有利于服务器中对各任务的资源分配,进而保证了服务器的运行安全。
17、上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
1.一种任务调度方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,将所述待执行任务处理为可执行体,包括:
3.根据权利要求2所述的方法,其特征在于,所述方法还包括;
4.根据权利要求1所述的方法,其特征在于,解析所述待执行任务中的执行资源要求,包括:
5.根据权利要求4所述的方法,其特征在于,根据所述执行资源要求匹配对应的目标服务器,包括:
6.根据权利要求1-5中任一项所述的方法,其特征在于,在将所述可执行体发送给所述目标服务器之后,所述方法还包括:
7.一种任务调度装置,其特征在于,所述装置包括:
8.根据权利要求7所述的装置,其特征在于,所述处理单元包括:
9.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行如权利要求1-6中任一项所述的任务调度方法。
10.一种电子设备,设备包括至少一个处理器、以及与处理器连接的至少一个存储器、总线;其中,所述处理器、所述存储器通过所述总线完成相互间的通信;所述处理器用于调用所述存储器中的程序指令,以执行如权利要求1-6中任一项所述的任务调度方法。