CN113806038A - 任务调度方法、装置、电子设备、存储介质及程序产品 - Google Patents

任务调度方法、装置、电子设备、存储介质及程序产品 Download PDF

Info

Publication number
CN113806038A
CN113806038A CN202110891794.5A CN202110891794A CN113806038A CN 113806038 A CN113806038 A CN 113806038A CN 202110891794 A CN202110891794 A CN 202110891794A CN 113806038 A CN113806038 A CN 113806038A
Authority
CN
China
Prior art keywords
task
target
version
upstream
input
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
CN202110891794.5A
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.)
Beijing Fangjianghu Technology Co Ltd
Original Assignee
Beijing Fangjianghu 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 Beijing Fangjianghu Technology Co Ltd filed Critical Beijing Fangjianghu Technology Co Ltd
Priority to CN202110891794.5A priority Critical patent/CN113806038A/zh
Publication of CN113806038A publication Critical patent/CN113806038A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供一种任务调度方法、装置、电子设备、存储介质及程序产品,该方法包括:接收对于目标任务的执行输入;响应于所述执行输入,获取所述目标任务的任务依赖关系;其中,所述任务依赖关系包括所述目标任务需要调用的上游任务的任务版本;在确定上游任务的任务版本已经成功运行的情况下,执行所述目标任务。通过在执行目标任务时,确定任务依赖关系中的目标任务需要调用的上游任务的任务版本;在确定上游任务的任务版本已经成功运行的情况下,才执行目标任务,从而能够顺利地执行具有依赖关系的任务实例,降低运维成本。

Description

任务调度方法、装置、电子设备、存储介质及程序产品
技术领域
本发明涉及计算机技术领域,尤其涉及一种任务调度方法、装置、电子设备、存储介质及程序产品。
背景技术
在大数据生态中,调度***扮演着重要的角色,它是保证数据流转能够按照正确流程执行的基础组件,任务的顺序执行是保证数据准确性保障,然而现有的调度***不能完全满足业务需求。
在现有技术中,例如,当两个任务流中共同依赖统一任务时,需要将两个任务流合并为一个,极大的提高运维成本;当依赖任务不是同一个时间周期(分,时,日,周等)时,现有方式没有办法实现,或者只能通过硬编码或通过经验来实现,这样会导致某些任务还没执行完成,而该任务的下游任务就已经执行了,导致数据出现不准确的情况;而且,当任务流出现失败时,现有方式需要重新修改脚本来重新修复数据。
因此,如何提供一种任务调度方案,能够顺利地执行具有依赖关系的任务实例,降低运维成本是本领域技术人员亟待解决的技术问题。
发明内容
本发明提供一种任务调度方法、装置、电子设备、存储介质及程序产品,能够顺利地执行具有依赖关系的任务实例,降低运维成本。
第一方面,本发明提供一种任务调度方法,包括:
接收对于目标任务的执行输入;
响应于所述执行输入,获取所述目标任务的任务依赖关系;其中,所述任务依赖关系包括所述目标任务需要调用的上游任务的任务版本信息;
在确定上游任务的任务版本已经成功运行的情况下,执行所述目标任务。
在一种实施例中,还包括:
接收用户建立目标任务的第一输入;
响应于所述第一输入,添加所述目标任务;
接收用户对所述目标任务的任务依赖关系的第二输入;
响应于所述第二输入,为所述目标任务添加所述目标任务执行时所需要调用的上游任务的任务版本。
在一种实施例中,所述上游任务的任务版本包括:所述上游任务执行时的时间信息。
在一种实施例中,在所述接收对于目标任务的执行输入之前,还包括:
每隔预设时间在待执行的任务实例中确定运行时间小于当前时间的目标任务实例;
在所述目标任务实例运行成功后,更新所述目标任务实例对应的任务版本的信息。
在一种实施例中,在响应于所述执行输入,获取所述目标任务的任务依赖关系之后,还包括:
在确定所述上游任务的任务版本没有成功运行的情况下,暂停所述目标任务的运行,直到所述上游任务的任务版本成功运行;
确定所述上游任务的任务版本中没有成功运行的缺失任务版本;
基于所述上游任务的预留通信信息发送所述缺失任务版本需要运行的提醒信息。
在一种实施例中,还包括:
接收用户对目标任务进行数据修复的第三输入;
响应于所述第三输入,获取所述目标任务的任务依赖关系以及任务执行信息;其中,所述任务执行信息包括:所述目标任务执行时所使用的上游任务的任务版本;
在确定所述任务执行信息与所述任务依赖关系不相符的情况下,基于所述任务依赖关系重新执行所述目标任务。
第二方面,本发明提供一种任务调度装置,包括:
执行输入模块,用于接收对于目标任务的执行输入;
关系获取模块,用于响应于所述执行输入,获取所述目标任务的任务依赖关系;其中,所述任务依赖关系包括所述目标任务需要调用的上游任务的任务版本;
任务执行模块,用于在确定上游任务的任务版本已经成功运行的情况下,执行所述目标任务。
在一种实施例中,还包括:
第一接收模块,用于第一接收用户建立目标任务的第一输入;
第一响应模块,用于响应于所述第一输入,添加所述目标任务;
第二接收模块,用于接收用户对所述目标任务的任务依赖关系的第二输入;
第二响应模块,用于响应于所述第二输入,为所述目标任务添加所述目标任务执行时所需要调用的上游任务的任务版本。
在一种实施例中,所述上游任务的任务版本包括:所述上游任务执行时的时间信息。
在一种实施例中,还包括:
任务扫描模块,用于每隔预设时间在待执行的任务实例中确定运行时间小于当前时间的目标任务实例;
版本更新模块,用于在所述目标任务实例运行成功后,更新所述目标任务实例对应的任务版本的信息。
在一种实施例中,还包括:
任务暂停模块,英语在确定所述上游任务的任务版本没有成功运行的情况下,暂停所述目标任务的运行,直到所述上游任务的任务版本成功运行;
缺失确定模块,用于确定所述上游任务的任务版本中没有成功运行的缺失任务版本;
运行提醒模块,用于基于所述上游任务的预留通信信息发送所述缺失任务版本需要运行的提醒信息。
在一种实施例中,还包括:
第三接收模块,用于接收用户对目标任务进行数据修复的第三输入;
第三响应模块,用于响应于所述第三输入,获取所述目标任务的任务依赖关系以及任务执行信息;其中,所述任务执行信息包括:所述目标任务执行时所使用的上游任务的任务版本;
重新执行模块,用于在确定所述任务执行信息与所述任务依赖关系不相符的情况下,基于所述任务依赖关系重新执行所述目标任务。
第三方面,本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述任务调度方法的步骤。
第四方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述任务调度方法的步骤。
第五方面,本发明还提供一种计算机程序产品,包括计算机程序/指令,所述计算机程序/指令被处理器执行时实现如上述任一种所述任务调度方法的步骤。
本发明提供的一种任务调度方法、装置、电子设备、存储介质及程序产品,通过在执行目标任务时,确定任务依赖关系中的目标任务需要调用的上游任务的任务版本;在确定上游任务的任务版本已经成功运行的情况下,才执行目标任务,从而能够顺利地执行具有依赖关系的任务实例,降低运维成本。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种任务调度方法的流程图;
图2为本发明实施例提供的一种任务调度方法的任务依赖示意图;
图3为本发明实施例提供的一种任务调度方法的任务建立示意图;
图4为本发明实施例提供的一种任务调度装置的组成结构示意图;
图5为本发明实施例提供的一种电子设备的结构示意图;
图6为本发明实施例提供的又一电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
下面结合图1-图3描述本发明的任务调度方法。
图1为本发明实施例提供的一种任务调度方法的流程图;图2为本发明实施例提供的一种任务调度方法的任务依赖示意图;图3为本发明实施例提供的一种任务调度方法的任务建立示意图。
在本发明的一种具体实施方式中,本发明实施例提供一种任务调度方法,包括:
步骤110:接收对于目标任务的执行输入。
在本发明实施例中,首先需要接收目标任务的执行的输入,在实践中,用户可以选择需要执行的目标任务,并且可以设置“执行”按钮,当用户需要执行该目标任务时,直接点击该“执行”按钮,则可以接收到用户对于目标任务的执行输入。
步骤120:响应于所述执行输入,获取所述目标任务的任务依赖关系;其中,所述任务依赖关系包括所述目标任务需要调用的上游任务的任务版本。
在接收到该执行输入后,并不会立刻进行目标任务的执行,而是需要获取该目标任务的任务依赖关系,任务依赖关系中存有该目标任务执行所需要的上游任务的任务版本等信息,这里的上游任务指的是目标任务执行所需要调用的数据来自的任务。
步骤130:在确定上游任务的任务版本已经成功运行的情况下,执行所述目标任务。
对于任务来说,每个任务版本每次运行会有一个任务实例,通过任务依赖关系以及时间规则来实现任务实例运行时需要前置检测上游有哪些任务版本,并将实例以及实例依赖相关记录落入数据库中;例如图2所示:任务A(每天中午12点运行),任务B(每天下午1点运行),在2020年9月22号的运行情况:而任务版本Bver1的执行依赖于任务版本Aver1运行的实例A1所产生的数据。那么任务版本Bver1在确定上游任务版本Aver1对应的实例A1已经成功运行,并且任务版本Bver1已经生成的情况下,可以执行目标任务版本Bver1对应的实例B1。而如果目标任务A因为某些原因并没有产生任务版本Aver1,或A1未运行成功,那么目标任务B则需要一直等待,直到任务A1运行成功。
在本发明的又一具体实施方式中,为了实现目标任务的任务依赖关系的建立,具体可以接收用户建立目标任务的第一输入;响应于所述第一输入,添加所述目标任务;接收用户对所述目标任务的任务依赖关系的第二输入;响应于所述第二输入,为所述目标任务添加所述目标任务执行时所需要调用的上游任务的任务版本。
具体地,可以设置“新增任务”按钮,当用户在需要建立新的任务时,可以点击该“新增任务”按钮,虽然弹出新增任务的弹窗,可以填写目标任务的名称,当然,用户还可以在弹窗中填写该目标任务的任务依赖关系,例如某个任务依赖关系可以是:跨时间区间则可以通过实例依赖来实现,例如任务C周期为小时任务,任务D周期为日的任务,生成任务实例依赖时任务D实例依赖当天任务C的24个版本(每个小时的版本),以此类推。也就是说当天执行的任务D依赖于当天执行的每个小时的24个任务版本,从而新增了任务依赖关系。
更具体地,在一种具体实施例中,在对上游任务的任务版本进行命名时,可以所述上游任务的任务版本中包含所述上游任务执行时的时间信息。例如,可以根据上游任务(当然,对于目标任务可以这样进行命名)的时间运行表达式,凌晨00:00:00计算出当天任务会运行的时间点(任务每次运行即为一个任务版本),将需要运行的任务版本记录录入到数据库中;如任务A为每天12:00:00分运行,那么2020年9月22日,它的版本即为202009221200,当然,也可以在任务版本中包含其他的内容,例如该任务所在的项目的简称等。
因此,由时间信息来进行任务版本的命名,由于同一个任务不同任务版本运行时,仅仅是相关的时间参数不同而已,而且任务版本本身就是时间,所以通过动态表达式(例如freeMarker等,FreeMarker是一款模板引擎:即一种基于模板和要改变的数据,并用来生成输出文本HTML网页、电子邮件、配置文件、源代码等)的通用工具。)或使用正则替换来任务运行参数中的时间参数;例如:某个任务每天统计网站的pv(page view,页面浏览量),对应的日期即为动态参数,实例运行时会通过任务版本(例如202009221200)来计算并获取日期参数today=20200922,即最终可以在数据库中查找日期参数today=20200922的网页浏览量。
在本发明又一种实施例中,为了实现目标任务的执行,保证目标任务所需要的任务版本都已经成功运行,还可以每隔预设时间在待执行的任务实例中确定运行时间小于当前时间的目标任务实例;在所述目标任务实例运行成功后,更新所述目标任务实例对应的任务版本的信息。例如,可以每分钟扫描目标任务实例中运行时间小于当前时间的记录来找出哪些任务实例需要运行,这些需要运行的目标任务实例运行成功后会将成功状态设置到对应的任务版本中去。
另外,在本发明的又一实施例中,在确定所述上游任务的任务版本没有成功运行的情况下,暂停所述目标任务的运行,直到所述上游任务的任务版本成功运行;确定所述上游任务的任务版本中没有成功运行的缺失任务版本;基于所述上游任务的预留通信信息发送所述缺失任务版本需要运行的提醒信息。
在确定上游任务的任务版本没有成功运行的情况下,目标任务会一直等待,直到上游任务的任务版本成功后,目标任务才会开始运行。也就是说,需要运行的任务实例不只是时间到达就会运行,还需要检查上游依赖的任务版本是否已经运行成功,如果已经成功才会运行,不成功则会一直等待上游所有依赖任务版本运行成功后才会运行。例如任务实例B1到达运行时间点后,还需要校验任务A的版本(2020091200)是否运行成功,成功则运行,否则等待,当然,还可以提醒这些没有运行的任务尽快运行,可以对该任务实例所负责的人员进行提醒。
在上述实施例的基础上,在实践中会存在目标任务在上游任务的任务版本没有完成的情况下进行执行,从而造成了数据不准确的现象,为了实现目标任务的数据修正,还可以接收用户对目标任务进行数据修复的第三输入;响应于所述第三输入,获取所述目标任务的任务依赖关系以及任务执行信息;其中,所述任务执行信息包括:所述目标任务执行时所使用的上游任务的任务版本;在确定所述任务执行信息与所述任务依赖关系不相符的情况下,基于所述任务依赖关系重新执行所述目标任务。
也就是说,可以设置“一键修复”按钮,对目标任务进行数据修复,当然也可以设置“全部修复”按钮对所有的任务进行数据修复,由于任务每次运行的动态参数与版本有关,所以任务修复时只需要找到对应的版本一键即可修复;如果任务有下游依赖时,可以通过递归的方式将下游任务全部重新运行来修复数据。
请参考图3,首先需要新建目标任务,在建立目标任务后为该目标任务配置任务依赖关系,并且根据任务版本的时间表达式生成任务版本,基于任务依赖关系生成目标任务所依赖的任务版本,通过时间检测以及上游任务的版本来检测目标任务需要的任务版本是否全部成功运行,如果目标任务需要的任务版本都已经全部运行成功,那么可以对目标任务进行运行,在目标任务的任务实例运行成功后,可以将目标任务对应标记为成功运行,并根据运行成功时间进行命名。
本发明实施例提供的一种任务调度方法,通过在执行目标任务时,确定任务依赖关系中的目标任务需要调用的上游任务的任务版本;在确定上游任务的任务版本已经成功运行的情况下,才执行目标任务,从而能够顺利地执行具有依赖关系的任务实例,降低运维成本。
需要说明的是,本发明实施例提供的任务调度方法,执行主体可以为任务调度装置,或者,或者该任务调度装置中的用于执行加载任务调度方法的控制模块。本发明实施例中以任务调度装置执行加载任务调度方法为例,说明本发明实施例提供的任务调度方法。
下面对本发明提供的任务调度装置进行描述,下文描述的任务调度装置与上文描述的任务调度方法可相互对应参照。
请参考图4,图4为本发明实施例提供的一种任务调度装置的组成结构示意图。
在本发明的又一具体实施方式中,本发明实施例提供一种任务调度装置400,包括:
执行输入模块410,用于接收对于目标任务的执行输入;
关系获取模块420,用于响应于所述执行输入,获取所述目标任务的任务依赖关系;其中,所述任务依赖关系包括所述目标任务需要调用的上游任务的任务版本;
任务执行模块430,用于在确定上游任务的任务版本已经成功运行的情况下,执行所述目标任务。
在一种实施例中,还包括:
第一接收模块,用于第一接收用户建立目标任务的第一输入;
第一响应模块,用于响应于所述第一输入,添加所述目标任务;
第二接收模块,用于接收用户对所述目标任务的任务依赖关系的第二输入;
第二响应模块,用于响应于所述第二输入,为所述目标任务添加所述目标任务执行时所需要调用的上游任务的任务版本。
在一种实施例中,所述上游任务的任务版本包括:所述上游任务执行时的时间信息。
在一种实施例中,还包括:
任务扫描模块,用于每隔预设时间在待执行的任务实例中确定运行时间小于当前时间的目标任务实例;
版本更新模块,用于在所述目标任务实例运行成功后,更新所述目标任务实例对应的任务版本的信息。
在一种实施例中,还包括:
任务暂停模块,用于在确定所述上游任务的任务版本没有成功运行的情况下,暂停所述目标任务的运行,直到所述上游任务的任务版本成功运行;
缺失确定模块,用于确定所述上游任务的任务版本中没有成功运行的缺失任务版本;
运行提醒模块,用于基于所述上游任务的预留通信信息发送所述缺失任务版本需要运行的提醒信息。
在一种实施例中,还包括:第三接收模块,用于接收用户对目标任务进行数据修复的第三输入;
第三响应模块,用于响应于所述第三输入,获取所述目标任务的任务依赖关系以及任务执行信息;其中,所述任务执行信息包括:所述目标任务执行时所使用的上游任务的任务版本;
重新执行模块,用于在确定所述任务执行信息与所述任务依赖关系不相符的情况下,基于所述任务依赖关系重新执行所述目标任务。
本发明实施例提供的一种任务调度装置,通过在执行目标任务时,确定任务依赖关系中的目标任务需要调用的上游任务的任务版本;在确定上游任务的任务版本已经成功运行的情况下,才执行目标任务,从而能够顺利地执行具有依赖关系的任务实例,降低运维成本。
本发明实施例中的任务调度装置可以是装置,也可以是终端中的部件、集成电路、或芯片。该装置可以是移动电子设备,也可以为非移动电子设备。示例性的,移动电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、可穿戴设备、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本或者个人数字助理(personaldigital assistant,PDA)等,非移动电子设备可以为服务器、网络附属存储器(NetworkAttached Storage,NAS)、个人计算机(personal computer,PC)、电视机(television,TV)、柜员机或者自助机等,本发明实施例不作具体限定。
本发明实施例中的任务调度装置可以为具有操作***的装置。该操作***可以为安卓(Android)操作***,可以为ios操作***,还可以为其他可能的操作***,本发明实施例不作具体限定。
本发明实施例提供的任务调度装置能够实现图1的方法实施例中任务调度装置实现的各个过程,为避免重复,这里不再赘述。
图5为实现本发明实施例的一种电子设备的硬件结构示意图。
该电子设备500包括但不限于:射频单元501、网络模块502、音频输出单元503、输入单元504、传感器505、显示单元506、用户输入单元507、接口单元508、存储器509、以及处理器510等部件。
本领域技术人员可以理解,电子设备500还可以包括给各个部件供电的电源(比如电池),电源可以通过电源管理***与处理器510逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗管理等功能。图5中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,在此不再赘述。
其中,输入单元504,用于接收对于目标任务的执行输入;
处理器510,用于响应于所述执行输入,获取所述目标任务的任务依赖关系;其中,所述任务依赖关系包括所述目标任务需要调用的上游任务的任务版本。
在确定上游任务的任务版本已经成功运行的情况下,执行所述目标任务。
在一种实施例中,输入单元504,用于接收用户建立目标任务的第一输入;
处理器510,用于响应于所述第一输入,添加所述目标任务;
输入单元504,用于接收用户对所述目标任务的任务依赖关系的第二输入;
处理器510,用于响应于所述第二输出,为所述目标任务添加所述目标任务执行时所需要调用的上游任务的任务版本。
在一种实施例中,处理器510,用于每隔预设时间在待执行的任务实例中确定运行时间小于当前时间的目标任务实例;在所述目标任务实例运行成功后,更新所述目标任务实例对应的任务版本的信息。
在一种实施例中,处理器510,用于在确定所述上游任务的任务版本没有成功运行的情况下,暂停所述目标任务的运行,直到所述上游任务的任务版本成功运行;确定所述上游任务的任务版本中没有成功运行的缺失任务版本;基于所述上游任务的预留通信信息发送所述缺失任务版本需要运行的提醒信息。
在一种实施例中,输入单元504,用于接收用户对目标任务进行数据修复的第三输入;
处理器510,用于响应于所述第三输入,获取所述目标任务的任务依赖关系以及任务执行信息;其中,所述任务执行信息包括:所述目标任务执行时所使用的上游任务的任务版本;在确定所述任务执行信息与所述任务依赖关系不相符的情况下,基于所述任务依赖关系重新执行所述目标任务。
图6示例了一种电子设备的实体结构示意图,如图6所示,该电子设备可以包括:处理器(processor)610、通信接口(Communications Interface)620、存储器(memory)630和通信总线640,其中,处理器610,通信接口620,存储器630通过通信总线640完成相互间的通信。处理器610可以调用存储器630中的逻辑指令,以执行任务调度方法,该方法包括:接收对于目标任务的执行输入;响应于所述执行输入,获取所述目标任务的任务依赖关系;其中,所述任务依赖关系包括所述目标任务需要调用的上游任务的任务版本;在确定上游任务的任务版本已经成功运行的情况下,执行所述目标任务。
此外,上述的存储器630中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的任务调度方法,该方法包括:接收对于目标任务的执行输入;响应于所述执行输入,获取所述目标任务的任务依赖关系;其中,所述任务依赖关系包括所述目标任务需要调用的上游任务的任务版本;在确定上游任务的任务版本已经成功运行的情况下,执行所述目标任务。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的任务调度方法,该方法包括:接收对于目标任务的执行输入;响应于所述执行输入,获取所述目标任务的任务依赖关系;其中,所述任务依赖关系包括所述目标任务需要调用的上游任务的任务版本;在确定上游任务的任务版本已经成功运行的情况下,执行所述目标任务。
本发明实施例另提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现上述任务调度方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
应理解,本发明实施例提到的芯片还可以称为***级芯片、***芯片、芯片***或片上***芯片等。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种任务调度方法,其特征在于,包括:
接收对于目标任务的执行输入;
响应于所述执行输入,获取所述目标任务的任务依赖关系;其中,所述任务依赖关系包括所述目标任务需要调用的上游任务的任务版本信息;
在确定上游任务的任务版本已经成功运行的情况下,执行所述目标任务。
2.根据权利要求1所述的任务调度方法,其特征在于,在所述接收对于目标任务的执行输入之前,还包括:
接收用户建立目标任务的第一输入;
响应于所述第一输入,添加所述目标任务;
接收用户对所述目标任务的任务依赖关系的第二输入;
响应于所述第二输入,为所述目标任务添加所述目标任务执行时所需要调用的上游任务的任务版本。
3.根据权利要求1所述的任务调度方法,其特征在于,所述上游任务的任务版本包括:所述上游任务执行时的时间信息。
4.根据权利要求1所述的任务调度方法,其特征在于,在所述接收对于目标任务的执行输入之前,还包括:
每隔预设时间在待执行的任务实例中确定运行时间小于当前时间的目标任务实例;
在所述目标任务实例运行成功后,更新所述目标任务实例对应的任务版本的信息。
5.根据权利要求1所述的任务调度方法,其特征在于,在响应于所述执行输入,获取所述目标任务的任务依赖关系之后,还包括:
在确定所述上游任务的任务版本没有成功运行的情况下,暂停所述目标任务的运行,直到所述上游任务的任务版本成功运行;
确定所述上游任务的任务版本中没有成功运行的缺失任务版本;
基于所述上游任务的预留通信信息发送所述缺失任务版本需要运行的提醒信息。
6.根据权利要求1至5任一项所述的任务调度方法,其特征在于,还包括:
接收用户对目标任务进行数据修复的第三输入;
响应于所述第三输入,获取所述目标任务的任务依赖关系以及任务执行信息;其中,所述任务执行信息包括:所述目标任务执行时所使用的上游任务的任务版本;
在确定所述任务执行信息与所述任务依赖关系不相符的情况下,基于所述任务依赖关系重新执行所述目标任务。
7.一种任务调度装置,其特征在于,包括:
执行输入模块,用于接收对于目标任务的执行输入;
关系获取模块,用于响应于所述执行输入,获取所述目标任务的任务依赖关系;其中,所述任务依赖关系包括所述目标任务需要调用的上游任务的任务版本;
任务执行模块,用于在确定上游任务的任务版本已经成功运行的情况下,执行所述目标任务。
8.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6任一项所述任务调度方法的步骤。
9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至6任一项所述任务调度方法的步骤。
10.一种计算机程序产品,包括计算机程序/指令,其特征在于,所述计算机程序/指令被处理器执行时实现如权利要求1至6任一项所述任务调度方法的步骤。
CN202110891794.5A 2021-08-04 2021-08-04 任务调度方法、装置、电子设备、存储介质及程序产品 Pending CN113806038A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110891794.5A CN113806038A (zh) 2021-08-04 2021-08-04 任务调度方法、装置、电子设备、存储介质及程序产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110891794.5A CN113806038A (zh) 2021-08-04 2021-08-04 任务调度方法、装置、电子设备、存储介质及程序产品

Publications (1)

Publication Number Publication Date
CN113806038A true CN113806038A (zh) 2021-12-17

Family

ID=78893282

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110891794.5A Pending CN113806038A (zh) 2021-08-04 2021-08-04 任务调度方法、装置、电子设备、存储介质及程序产品

Country Status (1)

Country Link
CN (1) CN113806038A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114610473A (zh) * 2022-05-11 2022-06-10 恒生电子股份有限公司 任务的处理方法及装置、非易失性存储介质
WO2023213118A1 (zh) * 2022-05-06 2023-11-09 北京快乐茄信息技术有限公司 任务调度的方法、装置和设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105117286A (zh) * 2015-09-22 2015-12-02 北京大学 MapReduce中任务的调度方法和流水化执行方法
CN110780981A (zh) * 2018-07-31 2020-02-11 北京科杰信息技术有限公司 一种hadoop大数据平台的任务调度管理***及方法
CN112559161A (zh) * 2021-02-19 2021-03-26 北京搜狐新媒体信息技术有限公司 一种任务调度方法及***
CN113094162A (zh) * 2021-04-09 2021-07-09 中国工商银行股份有限公司 一种任务依赖关系更新方法、装置及存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105117286A (zh) * 2015-09-22 2015-12-02 北京大学 MapReduce中任务的调度方法和流水化执行方法
CN110780981A (zh) * 2018-07-31 2020-02-11 北京科杰信息技术有限公司 一种hadoop大数据平台的任务调度管理***及方法
CN112559161A (zh) * 2021-02-19 2021-03-26 北京搜狐新媒体信息技术有限公司 一种任务调度方法及***
CN113094162A (zh) * 2021-04-09 2021-07-09 中国工商银行股份有限公司 一种任务依赖关系更新方法、装置及存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023213118A1 (zh) * 2022-05-06 2023-11-09 北京快乐茄信息技术有限公司 任务调度的方法、装置和设备
CN114610473A (zh) * 2022-05-11 2022-06-10 恒生电子股份有限公司 任务的处理方法及装置、非易失性存储介质

Similar Documents

Publication Publication Date Title
EP3842948A2 (en) Method and apparatus for testing edge computing, device, and readable storage medium
CN108804215B (zh) 一种任务处理方法、装置以及电子设备
CN109117141B (zh) 简化编程的方法、装置、电子设备、计算机可读存储介质
CN113806038A (zh) 任务调度方法、装置、电子设备、存储介质及程序产品
US8914798B2 (en) Production control for service level agreements
CN111815292A (zh) 一种业务审批方法、装置及计算机可读存储介质
CN115328759A (zh) 表单的校验方法及装置
CN103440146A (zh) 一种基于云存储的更新bios的方法
CN113656239A (zh) 针对中间件的监控方法、装置及计算机程序产品
CN115934550A (zh) 一种测试方法、装置、电子设备及存储介质
CN115421728A (zh) 一种业务代码生成方法、装置、电子设备及存储介质
CN115766697A (zh) 一种文件下载方法、装置、设备和存储介质
CN114693116A (zh) 代码评审有效性的检测方法及装置、电子设备
CN114647768A (zh) 一种公告信息采集方法、装置、设备、介质及产品
CN114218313A (zh) 数据管理方法、装置、电子设备、存储介质及产品
CN113971074A (zh) 事务处理方法、装置、电子设备及计算机可读存储介质
CN112561558A (zh) 快递时间画像的生成方法、生成装置、设备及存储介质
CN112099794A (zh) 前端项目构建方法及装置
CN111881025A (zh) 一种自动化测试任务调度方法、装置及***
CN110674201A (zh) 对企业资信调用情况进行查看的方法和装置
CN116975200A (zh) 用于控制服务器工作状态的方法、装置、设备及介质
CN117520299A (zh) 金融***迁移时的数据处理方法、装置、设备及介质
CN115509543A (zh) 确定文档有效性的方法、装置、电子设备及存储介质
CN115268880A (zh) 一种代码生成方法、装置、电子设备及存储介质
CN113076320A (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