CN114610473A - 任务的处理方法及装置、非易失性存储介质 - Google Patents
任务的处理方法及装置、非易失性存储介质 Download PDFInfo
- Publication number
- CN114610473A CN114610473A CN202210506765.7A CN202210506765A CN114610473A CN 114610473 A CN114610473 A CN 114610473A CN 202210506765 A CN202210506765 A CN 202210506765A CN 114610473 A CN114610473 A CN 114610473A
- Authority
- CN
- China
- Prior art keywords
- task
- processed
- dependency relationship
- target
- dependency
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请公开了一种任务的处理方法及装置、非易失性存储介质。其中,该方法包括:获取待处理任务,并确定待处理任务对应的任务调度依赖关系,其中,任务调度依赖关系包括:待处理任务在上下游维度的第一依赖关系以及在时间维度上的第二依赖关系;依据第一依赖关系确定执行待处理任务时所依赖的目标任务;依据第二依赖关系确定执行待处理任务时所依赖的目标任务对应的目标任务实例;利用目标任务实例执行待处理任务。本申请解决了按照任务定义之间的依赖关系无法清晰地描述任务之间的依赖关系的技术问题。
Description
技术领域
本申请涉及任务调度领域,具体而言,涉及一种任务的处理方法及装置、非易失性存储介质。
背景技术
软件系统中,任务调度就是定时任务,是指基于给定时间点,给定时间间隔或者给定执行次数自动执行任务。在实际业务场景中,定时任务往往不是独立的个体,任务之间存在依赖关系,即某个任务执行之前,需要某些上游任务执行提供数据,而该任务执行之后,又可为下游任务提供执行的前置条件,基于依赖的任务调度已经普遍应用于各种系统中。
往往业务场景中的任务之间的依赖关系相对复杂,例如:任务A每天14:00运行,任务B每天8:00运行,实际的业务场景中,A会依赖B前一天8:00运行的结果来运行,按照任务定义的依赖关系,A会依赖当天8:00的任务B,所以,按照任务定义的依赖关系来进行解析实际是无法满足业务场景的需要的,一维的任务依赖已经不足以描述对应的业务需求。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种任务的处理方法及装置、非易失性存储介质,以至少解决按照任务定义之间的依赖关系无法清晰地描述任务之间的依赖关系的技术问题。
根据本申请实施例的一个方面,提供了一种任务调度依赖关系的确定方法,包括:获取待处理任务,并确定待处理任务对应的任务调度依赖关系,其中,任务调度依赖关系包括:待处理任务在上下游维度的第一依赖关系以及在时间维度上的第二依赖关系;依据第一依赖关系确定执行待处理任务时所依赖的目标任务;依据第二依赖关系确定执行待处理任务时所依赖的目标任务对应的目标任务实例;利用目标任务实例执行待处理任务。
可选地,确定待处理任务对应的任务调度依赖关系之前,上述方法还包括:确定待处理任务在上下游维度的第一依赖关系;确定待处理任务在时间维度上的第二依赖关系;依据第一依赖关系和第二依赖关系生成待处理任务对应的任务调度依赖关系。
可选地,确定待处理任务在时间维度上的第二依赖关系,包括:生成待处理任务对应的任务实例,其中,任务实例为待处理任务的实际触发点,用于执行任务;将待处理任务在时间维度上的依赖关系作用于待处理任务对应的任务实例,得到待处理任务对应的任务实例在时间维度上的依赖关系。
可选地,生成待处理任务对应的任务实例,包括:依据待处理任务对应的任务实例的运行日期和日期偏移量确定目标运行日期;确定待处理任务在目标运行日期内的触发信息;依据触发信息生成待处理任务对应的任务实例。
可选地,确定待处理任务在目标运行日期内的触发信息,包括:获取预设字符串,其中,预设字符串用于表示时间信息;从预设字符串中提取时间信息;依据时间信息确定待处理任务的触发时间点,并将触发时间点作为触发信息。
可选地,依据触发信息生成待处理任务对应的任务实例,包括:判断待处理任务在目标运行日期内是否触发;如果待处理任务在目标运行日期内触发,则在目标运行日期内的触发时间点生成对应的任务实例;如果待处理任务在目标运行日期内未触发,生成空任务实例。
可选地,依据触发信息生成待处理任务对应的任务实例,还包括:如果待处理任务在目标运行日期内多次触发,确定每次触发的触发时间点,并在每次触发的触发时间点生成任务实例。
可选地,上述方法还包括:在展示界面上显示二维坐标系,其中,二维坐标系的横轴为任务的执行时刻,二维坐标系的纵轴为任务对应的任务实例的执行数据;在二维坐标系中展示待处理任务的任务实例以及目标任务对应的任务实例之间的依赖关系,其中,目标任务为执行待处理任务时所依赖的任务。
根据本申请实施例的再一方面,还提供了一种任务的处理装置,包括:获取模块,设置为获取待处理任务,并确定待处理任务对应的任务调度依赖关系,其中,任务调度依赖关系包括:待处理任务在上下游维度的第一依赖关系以及在时间维度上的第二依赖关系;第一确定模块,设置为依据第一依赖关系确定执行待处理任务时所依赖的目标任务;第二确定模块,设置为依据第二依赖关系确定执行待处理任务时所依赖的目标任务对应的目标任务实例;处理模块,设置为利用目标任务实例执行待处理任务。
根据本申请实施例的另一方面,还提供了一种计算机设备,包括处理器和存储器,存储器存储有可被处理器执行的计算机程序;处理器被配置为执行计算机程序,以实现以上的任务的处理方法。
根据本申请实施例的再一方面,还提供了一种非易失性存储介质,非易失性存储介质包括存储的程序,其中,在程序运行时控制非易失性存储介质所在设备执行以上的任务的处理方法。
根据本申请实施例的再一方面,还提供了一种处理器,处理器用于运行存储在存储器中的程序,其中,程序运行时执行以上的任务的处理方法。
在本申请实施例中,采用获取待处理任务,并确定待处理任务对应的任务调度依赖关系,其中,任务调度依赖关系包括:待处理任务在上下游维度的第一依赖关系以及在时间维度上的第二依赖关系;依据第一依赖关系确定执行待处理任务时所依赖的目标任务;依据第二依赖关系确定执行待处理任务时所依赖的目标任务对应的目标任务实例;利用目标任务实例执行待处理任务的方式,通过将任务之间依赖关系由一维变成二维,在上下游维度实现任务的上下游的依赖,在时间维度上实现不同周期任务实例的依赖,达到了将传统的任务依赖变成了二维的任务依赖的目的,从而实现了提高任务调度依赖关系的扩展性,满足了更广泛的业务场景需求的技术效果,进而解决了按照任务定义之间的依赖关系无法清晰地描述任务之间的依赖关系技术问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1示出了一种用于实现任务的处理方法的计算机终端(或移动设备)的硬件结构框图;
图2是根据本申请实施例的一种任务的处理方法的流程图;
图3是根据本申请实施例的一种创建任务实例的流程图;
图4是根据本申请实施例的一种任务调度依赖关系的确定方法的示意图;
图5是根据本申请实施例的一种任务的处理装置的结构框图;
图6是根据本申请实施例的一种计算机设备的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,在对本申请实施例进行描述的过程中出现的部分名词或术语适用于如下解释:
任务定义(TaskDefinition),任务是调度中的基本单元,对于任务的运行周期和执行内容等主要信息的描述。
任务实例(TaskInstance),任务的实际触发点,通过任务定义对每一个触发时间点都会产生一个任务实例,任务实例会执行任务的具体内容。
空任务实例(EmptyTaskInstance),任务实例只是生成一个触发点,但是不会执行实际的任务内容;
实例运行日期(T),任务实例的运行日期。
日期偏移天数(N),目标日期的向前偏移数量。
实例生成器,维护一个任务实例生成的调度任务,该调度任务在每天的固定时间触发,触发时则根据配置参数生成对应日期的调度任务实例。
根据本申请实施例,提供了一种任务的处理方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。图1示出了一种用于实现任务的处理方法的计算机终端(或移动设备)的硬件结构框图。如图1所示,计算机终端10(或移动设备10)可以包括一个或多个(图中采用102a、102b,……,102n来示出)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输装置。除此以外,还可以包括:显示器、输入/输出接口(I/O接口)、通用串行总线(USB)端口(可以作为BUS总线的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
应当注意到的是上述一个或多个处理器102和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到计算机终端10(或移动设备)中的其他元件中的任意一个内。如本申请实施例中所涉及到的,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
存储器104可用于存储应用软件的软件程序以及模块,如本申请实施例中的任务的处理方法对应的程序指令/数据存储装置,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的任务的处理方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
显示器可以例如触摸屏式的液晶显示器(LCD),该液晶显示器可使得用户能够与计算机终端10(或移动设备)的用户界面进行交互。
在上述运行环境下,图2是根据本申请实施例的一种任务的处理方法的流程图,如图2所示,该方法包括如下步骤:
步骤S202,获取待处理任务,并确定待处理任务对应的任务调度依赖关系,其中,任务调度依赖关系包括:待处理任务在上下游维度的第一依赖关系以及在时间维度上的第二依赖关系。
上述待处理任务为软件系统中的任务。
作为一个可选的实施例,执行任务A需要任务B的执行结果,任务A和任务B之间的这种依赖关系称为上下游维度上的依赖关系。
在一个可选的实施例中,任务A每天14:00运行,任务B每天8:00运行,实际的业务场景中,任务A依赖任务B前一天8:00运行的结果,任务A和任务B之间的这种依赖关系称为时间维度上的依赖关系。
在一个可选的应用场景中,处理器获取待处理任务后,从数据库中获取该待处理任务对应的任务调度依赖关系。该任务调度依赖关系是一个二维的依赖关系,包括待处理任务在上下游维度的第一依赖关系和在时间维度上的第二依赖关系。
步骤S204,依据第一依赖关系确定执行待处理任务时所依赖的目标任务。
需要说明的是,上述第一依赖关系为任务定义之间的依赖关系。在本步骤中,处理器从上述第一依赖关系中查找待处理任务A依赖的目标任务B。
步骤S206,依据第二依赖关系确定执行待处理任务时所依赖的目标任务对应的目标任务实例。
需要说明的是,第二依赖关系实际是任务对应的任务实例之间的依赖关系,在上文中已经说明,任务实例是任务的实际触发点,执行任务的具体内容。任务A和目标任务B之间的第二依赖关系实际上是任务A对应的任务实例和目标任务B对应的任务实例之间的依赖关系。
在执行步骤S206时,处理器从上述第二依赖关系中查找待处理任务A依赖的目标任务B对应的任务实例。
作为一个可选的实施例,上述任务实例是预先生成的。如果待处理任务在目标日期内只触发一次,则生成一个任务实例;如果待处理任务在目标日期内触发多次,则生成多个任务实例。
步骤S208,利用目标任务实例执行待处理任务。
通过上述步骤,通过将任务之间依赖关系由一维变成二维,在上下游维度实现任务的上下游的依赖,在时间维度上实现不同周期任务实例的依赖,达到了将传统的任务依赖变成了二维的任务依赖的目的,从而实现了提高任务调度依赖关系的扩展性,满足了更广泛的业务场景需求的技术效果。
根据本申请的一个可选的实施例,执行步骤S202确定待处理任务对应的任务调度依赖关系之前,还需要确定待处理任务在上下游维度的第一依赖关系;确定待处理任务在时间维度上的第二依赖关系;依据第一依赖关系和第二依赖关系生成待处理任务对应的任务调度依赖关系。
在本步骤中,得到第一依赖关系和第二依赖关系后进行组合,即可得到多个任务之间的二维调度依赖关系 。
由于直接通过任务定义无法表示任务在时间维度上的依赖关系,因此,要确定任务在时间维度上的依赖关系,可以通过用任务实例表示。具体地,在本申请的一些可选的实施例中,通过以下方式确定待处理任务在时间维度上的第二依赖关系:生成待处理任务对应的任务实例,其中,任务实例为待处理任务的实际触发点,用于执行任务;将待处理任务在时间维度上的依赖关系作用于待处理任务对应的任务实例,得到待处理任务对应的任务实例在时间维度上的依赖关系。
任务实例是任务的实际触发点,通过任务定义对每一个触发时间点都会产生一个任务实例,任务实例会执行任务的具体内容。
通过用任务实例表示任务在时间维度上的依赖关系,首先需要生成任务对应的任务实例,然后将任务在时间维度上的依赖关系作用于任务实例,即得到多个任务对应的任务实例在时间维度上的依赖关系。
例如,维护任务依赖关系时,增加偏移参数N,N取值>=0,即A依赖B,在日期T当日,A的实例A(T)运行时,依赖实例B(T-N)的运行结果。
在本申请的一些可选的实施例中,生成待处理任务对应的任务实例,通过以下方法实现:依据待处理任务对应的任务实例的运行日期和日期偏移量天数确定目标运行日期;确定待处理任务在目标运行日期内的触发信息;依据触发信息生成待处理任务对应的任务实例。
在本申请提供的实施例中,通过实例生成器在每天负责按照设定的参数创建目标日期的任务实例。图3是根据本申请实施例的一种创建任务实例的流程图,如图3所示,任务实例的创建过程包括如下步骤:
步骤S301,计算偏移日期,根据任务实例的当前执行日期计算偏移日期(即上文中的目标日期),例如,任务实例的调度任务触发日期为T,根据配置会生成N天之后的实例数据,即T+N,那么此时计算T+N的日期。
作为一个可选的实施例,在确定待处理任务在目标运行日期内的触发信息时包括以下步骤:获取预设字符串,其中,预设字符串用于表示时间信息;从预设字符串中提取时间信息;依据时间信息确定待处理任务的触发时间点,并将触发时间点作为触发信息。
上述预设字符串为cron表达式。
参见图3中的步骤S302,根据任务定义判断任务在目标时间段内是否触发,根据cron表达式模拟任务在目标日期(T+N)内的触发情况,判断任务在目标日期内是否会被触发。
Cron表达式是一个具有时间含义的字符串,字符串以5个或6个空格隔开,分为6个或7个域,每一个域代表一个含义。例如:
1)秒(0-59);
2)分钟(0-59);
3)小时(0-23);
4)天(月的第几天)(0-31);
5)月(0-11);
6)天(星期几)(1-7);
7)年份(1970-2099)。
根据本申请的一个可选的实施例,依据触发信息生成待处理任务对应的任务实例,可以通过以下方法实现:判断待处理任务在目标运行日期内是否触发;如果待处理任务在目标运行日期内触发,则在目标运行日期内的触发时间点生成对应的任务实例;如果待处理任务在目标运行日期内未触发,生成空任务实例。
如图3所示,步骤S303,计算触发点对应的时间点,如果触发,则根据cron表达式计算对应的触发时间点。
步骤S304,生成触发时间点对应的任务实例,如果无触发,则生成空实例。
步骤S305,根据任务定义依赖关系分配任务实例的依赖关系,将任务之间的依赖关系作用于任务实例,即生成任务实例之间的依赖关系。
步骤S306,持久化任务实例的依赖关系,存储生成的依赖关系,包括但不限于存储至数据库中。
通过以上步骤之后,任务实例依赖关系已经持久化存储,等到任务的实际触发日期运行时,调度任务在触发点上直接通过存储读取对应的任务实例数据进行前置条件判断和运行。
在本申请的另一个可选的实施例中,依据触发信息生成待处理任务对应的任务实例时,如果待处理任务在目标运行日期内多次触发,利用预设字符串计算每次触发的触发时间点,并生成每次触发时间点对应的任务实例。
作为一个可选的实施例,任务在目标周期内如果是多次触发,则生成多个任务实例,即在每个触发时间点均生成一个任务实例。
本申请实施例提供的上述方法具有以下特点:
统一周期的时间参照,按天来进行计算,对于像月或者周这种大于天的周期,统一的换算成天为单位,实际触发日期则生成实例,而非触发日期则生成空任务实例,对于像小时或者分钟这种周期调度,也可按照天为单位,一天之内在对应的调度时间点上生成多个调度实例。采用实例预生成和持久化的模式也可减小在任务实时运行过程中根据任务定义动态计算上下游依赖关系给系统带来大的计算量的负担。
通过任务调度二维关系的引入,像因调度周期存在度量单位不统一,例如月调度依赖天调度或者反之天调度依赖月调度,或是调度任务依赖存在偏移时间差如上文举例的14:00运行的任务依赖8:00运行的任务之类相对比较棘手的依赖关系,都可通过二维化任务实例节点后再设定对应的依赖关系来解决,覆盖实际业务场景中的多数业务需求。
图4是根据本申请实施例的一种任务调度依赖关系的确定方法的示意图,如图4所示,在展示界面上显示二维坐标系,其中,二维坐标系的横轴为任务的执行时刻,二维坐标系的纵轴为任务对应的任务实例的执行数据;在二维坐标系中展示待处理任务的任务实例以及目标任务对应的任务实例之间的依赖关系,其中,目标任务为执行待处理任务时所依赖的任务。
如图4所示,任务A每天t2时刻运行,任务A每天t1时刻运行,任务A依赖任务B前一天t1时刻运行的结果,任务A的实例A(t2)运行时,依赖实例B(t1-1)的运行结果。
通过上述方法,可以将任务之间的依赖关系直观地展示给用户,可以实现提高用户的使用体验的技术效果。
参见图2所示实施例的相关描述,引入业务日期T和日期偏移量N,生成任务实例使任务的运行周期二维化。通过任务实例的依赖而非任务定义的依赖,使原有的任务依赖变成一个以上下游依赖为纵轴,以时间点为横轴的二维坐标,所有的任务实例经过此规则定义之后全部变成了该二维平面上的点,可以自由的设定上下游依赖关系。
图5是根据本申请实施例的一种任务的处理装置的结构框图,如图5所示,该装置包括:
获取模块50,设置为获取待处理任务,并确定待处理任务对应的任务调度依赖关系,其中,任务调度依赖关系包括:待处理任务在上下游维度的第一依赖关系以及在时间维度上的第二依赖关系。
上述待处理任务为软件系统中的任务。
作为一个可选的实施例,执行任务A需要任务B的执行结果,任务A和任务B之间的这种依赖关系称为上下游维度上的依赖关系。
在一个可选的实施例中,任务A每天14:00运行,任务B每天8:00运行,实际的业务场景中,任务A依赖任务B前一天8:00运行的结果,任务A和任务B之间的这种依赖关系称为时间维度上的依赖关系。
在一个可选的应用场景中,处理器获取待处理任务后,从数据库中获取该待处理任务对应的任务调度依赖关系。该任务调度依赖关系是一个二维的依赖关系,包括待处理任务在上下游维度的第一依赖关系和在时间维度上的第二依赖关系。
第一确定模块52,设置为依据第一依赖关系确定执行待处理任务时所依赖的目标任务。
从上述第一依赖关系中查找待处理任务A依赖的目标任务B。
第二确定模块54,设置为依据第二依赖关系确定执行待处理任务时所依赖的目标任务对应的目标任务实例。
需要说明的是,第二依赖关系实际是任务对应的任务实例之间的依赖关系,在上文中已经说明,任务实例是任务的实际触发点,执行任务的具体内容。任务A和目标任务B之间的第二依赖关系实际上是任务A对应的任务实例和目标任务B对应的任务实例之间的依赖关系。
从上述第二依赖关系中查找待处理任务A依赖的目标任务B对应的任务实例。
处理模块56,设置为利用目标任务实例执行待处理任务。
需要说明的是,图5所示实施例的优选实施方式可以参见图2所示实施例的相关描述,此处不再赘述。
根据本申请的一个可选的实施例,上述装置还包括:第一确定模块,设置为确定待处理任务在上下游维度的第一依赖关系;第二确定模块,设置为确定待处理任务在时间维度上的第二依赖关系;第三确定模块,设置为依据第一依赖关系和第二依赖关系生成待处理任务对应的任务调度依赖关系。
根据本申请的另一个可选的实施例,第二确定模块,包括:生成单元,设置为生成待处理任务对应的任务实例,其中,任务实例为待处理任务的实际触发点,用于执行任务;处理单元,设置为将待处理任务在时间维度上的依赖关系作用于待处理任务对应的任务实例,得到待处理任务对应的任务实例在时间维度上的依赖关系。
作为一个可选的实施例,生成单元,包括:第一确定子单元,设置为依据待处理任务对应的任务实例的运行日期和日期偏移量确定目标运行日期;第二确定子单元,设置为确定待处理任务在目标运行日期内的触发信息;生成子单元,设置为依据触发信息生成待处理任务对应的任务实例。
在本申请的一些可选的实施例中,第二确定子单元设置为:获取预设字符串,其中,预设字符串用于表示时间信息;从预设字符串中提取时间信息;依据时间信息确定待处理任务的触发时间点,并将触发时间点作为触发信息。
在本申请的另一些可选的实施例中,生成子单元设置为:判断待处理任务在目标运行日期内是否触发;如果待处理任务在目标运行日期内触发,则在目标运行日期内的触发时间点生成对应的任务实例;如果待处理任务在目标运行日期内未触发,生成空任务实例。
作为一个可选的实施例,生成子单元还设置为:如果待处理任务在目标运行日期内多次触发,确定每次触发的触发时间点,并在每次触发的触发时间点生成任务实例。
可选地,上述装置还包括显示模块,设置为:在展示界面上显示二维坐标系,其中,二维坐标系的横轴为任务的执行时刻,二维坐标系的纵轴为任务对应的任务实例的执行数据;在二维坐标系中展示待处理任务的任务实例以及目标任务对应的任务实例之间的依赖关系,其中,目标任务为执行待处理任务时所依赖的任务。
图6是根据本申请实施例的一种计算机设备的结构框图,如图6所示,该计算机设备包括处理器60和存储器62,
存储器62存储有可被处理器60执行的计算机程序;
处理器60被配置为执行该计算机程序,以实现以上的任务的处理方法。
本申请实施例还提供了一种非易失性存储介质,非易失性存储介质包括存储的程序,其中,在程序运行时控制非易失性存储介质所在设备执行以上的任务的处理方法。
上述非易失性存储介质用于存储执行以下功能的程序:获取待处理任务,并确定待处理任务对应的任务调度依赖关系,其中,任务调度依赖关系包括:待处理任务在上下游维度的第一依赖关系以及在时间维度上的第二依赖关系;依据第一依赖关系查找执行待处理任务时所依赖的目标任务;依据第二依赖关系查找执行待处理任务时所依赖的目标任务对应的目标任务实例;利用目标任务实例执行待处理任务。
本申请实施例还提供了一种处理器,处理器用于运行存储在存储器中的程序,其中,程序运行时执行以上的任务的处理方法。
上述处理器用于运行执行以下功能的程序:获取待处理任务,并确定待处理任务对应的任务调度依赖关系,其中,任务调度依赖关系包括:待处理任务在上下游维度的第一依赖关系以及在时间维度上的第二依赖关系;依据第一依赖关系查找执行待处理任务时所依赖的目标任务;依据第二依赖关系查找执行待处理任务时所依赖的目标任务对应的目标任务实例;利用目标任务实例执行待处理任务。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对相关技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (11)
1.一种任务的处理方法,其特征在于,包括:
获取待处理任务,并确定所述待处理任务对应的任务调度依赖关系,其中,所述任务调度依赖关系包括:所述待处理任务在上下游维度的第一依赖关系以及在时间维度上的第二依赖关系;
依据所述第一依赖关系确定执行所述待处理任务时所依赖的目标任务;
依据所述第二依赖关系确定执行所述待处理任务时所依赖的所述目标任务对应的目标任务实例;
利用所述目标任务实例执行所述待处理任务。
2.根据权利要求1所述的方法,其特征在于,确定所述待处理任务对应的任务调度依赖关系之前,所述方法还包括:
确定所述待处理任务在上下游维度的第一依赖关系;
确定所述待处理任务在时间维度上的第二依赖关系;
依据所述第一依赖关系和所述第二依赖关系生成所述待处理任务对应的任务调度依赖关系。
3.根据权利要求2所述的方法,其特征在于,确定所述待处理任务在时间维度上的第二依赖关系,包括:
生成所述待处理任务对应的任务实例,其中,所述任务实例为所述待处理任务的实际触发点,用于执行所述待处理任务;
将所述待处理任务在时间维度上的依赖关系作用于所述待处理任务对应的任务实例,得到所述待处理任务对应的任务实例在时间维度上的依赖关系。
4.根据权利要求3所述的方法,其特征在于,生成所述待处理任务对应的任务实例,包括:
依据所述待处理任务对应的任务实例的运行日期和日期偏移量确定目标运行日期;
确定所述待处理任务在所述目标运行日期内的触发信息;
依据所述触发信息生成所述待处理任务对应的任务实例。
5.根据权利要求4所述的方法,其特征在于,确定所述待处理任务在所述目标运行日期内的触发信息,包括:
获取预设字符串,其中,所述预设字符串用于表示时间信息;
从所述预设字符串中提取所述时间信息;
依据所述时间信息确定所述待处理任务的触发时间点,并将所述触发时间点作为所述触发信息。
6.根据权利要求4所述的方法,其特征在于,依据所述触发信息生成所述待处理任务对应的任务实例,包括:
判断所述待处理任务在所述目标运行日期内是否触发;
如果所述待处理任务在所述目标运行日期内触发,则在所述目标运行日期内的触发时间点生成对应的任务实例;
如果所述待处理任务在所述目标运行日期内未触发,生成空任务实例。
7.根据权利要求4所述的方法,其特征在于,依据所述触发信息生成所述待处理任务对应的任务实例,还包括:
如果所述待处理任务在所述目标运行日期内多次触发,确定每次触发的触发时间点,并在每次触发的所述触发时间点生成任务实例。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在展示界面上显示二维坐标系,其中,所述二维坐标系的横轴为任务的执行时刻,所述二维坐标系的纵轴为所述任务对应的任务实例的执行数据;
在所述二维坐标系中展示所述待处理任务的任务实例以及目标任务对应的任务实例之间的依赖关系,其中,所述目标任务为执行所述待处理任务时所依赖的任务。
9.一种任务的处理装置,其特征在于,包括:
获取模块,设置为获取待处理任务,并确定所述待处理任务对应的任务调度依赖关系,其中,所述任务调度依赖关系包括:所述待处理任务在上下游维度的第一依赖关系以及在时间维度上的第二依赖关系;
第一确定模块,设置为依据所述第一依赖关系确定执行所述待处理任务时所依赖的目标任务;
第二确定模块,设置为依据所述第二依赖关系确定执行所述待处理任务时所依赖的所述目标任务对应的目标任务实例;
处理模块,设置为利用所述目标任务实例执行所述待处理任务。
10.一种非易失性存储介质,其特征在于,所述非易失性存储介质包括存储的程序,其中,在所述程序运行时控制所述非易失性存储介质所在设备执行权利要求1至8中任意一项所述的任务的处理方法。
11.一种计算机设备,其特征在于,包括处理器和存储器,所述存储器存储有可被所述处理器执行的计算机程序;所述处理器被配置为执行所述计算机程序,以实现权利要求1至8中任意一项所述的任务的处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210506765.7A CN114610473A (zh) | 2022-05-11 | 2022-05-11 | 任务的处理方法及装置、非易失性存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210506765.7A CN114610473A (zh) | 2022-05-11 | 2022-05-11 | 任务的处理方法及装置、非易失性存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114610473A true CN114610473A (zh) | 2022-06-10 |
Family
ID=81870521
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210506765.7A Pending CN114610473A (zh) | 2022-05-11 | 2022-05-11 | 任务的处理方法及装置、非易失性存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114610473A (zh) |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120089967A1 (en) * | 2010-10-08 | 2012-04-12 | Microsoft Corporation | Dynamic data and compute resource elasticity |
CN105719126A (zh) * | 2016-01-22 | 2016-06-29 | 上海晶赞科技发展有限公司 | 一种基于生命周期模型的互联网大数据任务调度的系统及方法 |
CN109408204A (zh) * | 2017-08-15 | 2019-03-01 | 阿里巴巴集团控股有限公司 | 一种分布式任务系统的任务调度方法及装置 |
CN109445926A (zh) * | 2018-11-09 | 2019-03-08 | 杭州玳数科技有限公司 | 数据任务调度方法及数据任务调度系统 |
CN112328377A (zh) * | 2020-11-04 | 2021-02-05 | 北京字节跳动网络技术有限公司 | 基线监控方法、装置、可读介质及电子设备 |
CN112487004A (zh) * | 2020-11-26 | 2021-03-12 | 蔚来汽车科技(安徽)有限公司 | 基于数据血缘自动控制任务的方法、装置、介质及系统 |
CN112631751A (zh) * | 2020-12-22 | 2021-04-09 | 平安普惠企业管理有限公司 | 任务调度方法、装置、计算机设备及存储介质 |
CN112948072A (zh) * | 2021-01-28 | 2021-06-11 | 中电健康云科技有限公司 | 一种基于时间与依赖关系的大数据任务调度系统及方法 |
CN113010289A (zh) * | 2021-03-17 | 2021-06-22 | 杭州遥望网络科技有限公司 | 一种任务调度方法、装置和系统 |
CN113360282A (zh) * | 2021-06-03 | 2021-09-07 | 中国工商银行股份有限公司 | 一种任务管理方法、装置、电子设备及存储介质 |
US11144363B1 (en) * | 2017-09-18 | 2021-10-12 | Amazon Technologies, Inc. | Workflow management system |
CN113760476A (zh) * | 2020-06-04 | 2021-12-07 | 广州虎牙信息科技有限公司 | 任务依赖处理方法及相关装置 |
CN113806038A (zh) * | 2021-08-04 | 2021-12-17 | 北京房江湖科技有限公司 | 任务调度方法、装置、电子设备、存储介质及程序产品 |
-
2022
- 2022-05-11 CN CN202210506765.7A patent/CN114610473A/zh active Pending
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120089967A1 (en) * | 2010-10-08 | 2012-04-12 | Microsoft Corporation | Dynamic data and compute resource elasticity |
CN105719126A (zh) * | 2016-01-22 | 2016-06-29 | 上海晶赞科技发展有限公司 | 一种基于生命周期模型的互联网大数据任务调度的系统及方法 |
CN109408204A (zh) * | 2017-08-15 | 2019-03-01 | 阿里巴巴集团控股有限公司 | 一种分布式任务系统的任务调度方法及装置 |
US11144363B1 (en) * | 2017-09-18 | 2021-10-12 | Amazon Technologies, Inc. | Workflow management system |
CN109445926A (zh) * | 2018-11-09 | 2019-03-08 | 杭州玳数科技有限公司 | 数据任务调度方法及数据任务调度系统 |
CN113760476A (zh) * | 2020-06-04 | 2021-12-07 | 广州虎牙信息科技有限公司 | 任务依赖处理方法及相关装置 |
CN112328377A (zh) * | 2020-11-04 | 2021-02-05 | 北京字节跳动网络技术有限公司 | 基线监控方法、装置、可读介质及电子设备 |
CN112487004A (zh) * | 2020-11-26 | 2021-03-12 | 蔚来汽车科技(安徽)有限公司 | 基于数据血缘自动控制任务的方法、装置、介质及系统 |
CN112631751A (zh) * | 2020-12-22 | 2021-04-09 | 平安普惠企业管理有限公司 | 任务调度方法、装置、计算机设备及存储介质 |
CN112948072A (zh) * | 2021-01-28 | 2021-06-11 | 中电健康云科技有限公司 | 一种基于时间与依赖关系的大数据任务调度系统及方法 |
CN113010289A (zh) * | 2021-03-17 | 2021-06-22 | 杭州遥望网络科技有限公司 | 一种任务调度方法、装置和系统 |
CN113360282A (zh) * | 2021-06-03 | 2021-09-07 | 中国工商银行股份有限公司 | 一种任务管理方法、装置、电子设备及存储介质 |
CN113806038A (zh) * | 2021-08-04 | 2021-12-17 | 北京房江湖科技有限公司 | 任务调度方法、装置、电子设备、存储介质及程序产品 |
Non-Patent Citations (1)
Title |
---|
周鹤等: "手机阅读平台仓库管理模块的设计与实现", 《电信工程技术与标准化》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111079006B (zh) | 一种消息推送方法、装置、电子设备及介质 | |
CN104598551A (zh) | 一种数据统计方法及装置 | |
CN113077276A (zh) | 行为数据的处理方法和系统、存储介质及处理器 | |
CN110941634A (zh) | 数据的处理方法及装置、存储介质和电子装置 | |
CN111198736A (zh) | 基于用户状态特征的页面展示方法及其装置、系统、服务器、存储介质 | |
CN112698772A (zh) | 文档模板的处理方法及装置、文档创建方法及装置 | |
CN114610473A (zh) | 任务的处理方法及装置、非易失性存储介质 | |
CN104391898A (zh) | 数据展示方法和装置 | |
CN110634031A (zh) | 一种发布内容的追踪分析方法、装置、设备和介质 | |
CN112288406B (zh) | 一种基于科技信息众创平台的服务对象检索方法 | |
CN110119954B (zh) | 生成手术用具追踪订单的方法及装置 | |
CN113434228A (zh) | 页面的请求方法、装置、存储介质及电子装置 | |
CN112711936A (zh) | 信息显示方法、装置、设备和存储介质 | |
CN111831380A (zh) | 任务的执行方法及装置、存储介质和电子装置 | |
CN112699304A (zh) | 数据处理方法和装置、存储介质及电子装置 | |
CN111026546A (zh) | 一种任务的调度方法、装置、存储介质及电子装置 | |
CN110597574A (zh) | 账户的匹配方法、装置以及存储介质 | |
CN111367641B (zh) | 一种基于物联网的定时方法及系统 | |
CN109587038A (zh) | 消息推送方法及装置 | |
CN114661392B (zh) | 信息展示方法、信息处理方法、装置、设备及存储介质 | |
CN113590913B (zh) | 数据资源的显示方法及装置、存储介质及电子装置 | |
CN113778784B (zh) | 目标应用的用户数量确定方法和装置、电子设备及存储介质 | |
CN115134903A (zh) | 时钟驯服方法、装置、处理器及终端设备 | |
CN111507095B (zh) | 裁判文书的生成方法、装置、存储介质和处理器 | |
CN114090919A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20220610 |
|
RJ01 | Rejection of invention patent application after publication |