CN115145711B - 一种获取有向无环图任务结果的数据处理*** - Google Patents

一种获取有向无环图任务结果的数据处理*** Download PDF

Info

Publication number
CN115145711B
CN115145711B CN202211069686.0A CN202211069686A CN115145711B CN 115145711 B CN115145711 B CN 115145711B CN 202211069686 A CN202211069686 A CN 202211069686A CN 115145711 B CN115145711 B CN 115145711B
Authority
CN
China
Prior art keywords
task
node
state
target
processor
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.)
Active
Application number
CN202211069686.0A
Other languages
English (en)
Other versions
CN115145711A (zh
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.)
Rizhao Ruian Information Technology Co ltd
Beijing Rich Information Technology Co ltd
Original Assignee
Rizhao Ruian Information Technology Co ltd
Beijing Rich 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 Rizhao Ruian Information Technology Co ltd, Beijing Rich Information Technology Co ltd filed Critical Rizhao Ruian Information Technology Co ltd
Priority to CN202211069686.0A priority Critical patent/CN115145711B/zh
Publication of CN115145711A publication Critical patent/CN115145711A/zh
Application granted granted Critical
Publication of CN115145711B publication Critical patent/CN115145711B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • 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/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/548Queue

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供了一种获取有向无环图任务结果的数据处理***,通过获取初始任务节点对应的初始潜在等待时间,并将初始时间由小至大进行排序,为任务队列处理器分配初始任务节点,通过更快的执行得到初始任务的结果,从而使原始任务节点能够更快由第二任务状态转换为第一任务状态;还通过指令处理器对任务处理器进行监听并且将得到的中间任务节点结果发送至任务节点调度器,进而获取到目标任务列表,任务节点调度器为非工作状态的任务队列处理器分配目标任务节点,节省了时间资源,提高了任务队列处理器的工作效率。

Description

一种获取有向无环图任务结果的数据处理***
技术领域
本发明涉及有向无环图技术领域,特别是涉及一种获取有向无环图任务结果的数据处理***。
背景技术
现有技术中对于有向无环图的分析和处理,一般由很多独立的进程完成,每个进程完成特定的数据处理逻辑,其中的进程称之为数据加工任务;在实际的处理过程中,要考虑节点和节点之间先后的顺序逻辑关系,例如,要处理节点A,首先要完成节点B的处理,因为A依赖于B的结果;由于数据之间存在关联和逻辑关系,对应的数据加工任务之间也有对应的关联和依赖,为保证节点处理的正确结果,要求这些节点任务按照逻辑关系有序、高效的执行。
现有技术中,往往获取到可以进行处理的节点后就不再进行排序,直接对节点进行处理,这样可能会导致优先处理的节点为处理时间长的节点,因此,会导致节点解锁过慢,对任务节点进行处理的处理器空闲,对任务节点进行处理的处理器的效率低;并且现有技术中,往往通过轮询的方式查找空闲的对任务节点进行处理的处理器,也就是预设监听时间阈值,每经过一个监听时间阈值,就对任务节点进行处理的处理器进行监听,因此,会出现没有及时为任务节点进行处理的处理器分配任务的情况,浪费时间资源,但是当将轮巡时间变短时,性能成本大。
发明内容
针对上述技术问题,本发明采用的技术方案为:
一种获取有向无环图任务结果的数据处理***,包括:数据库、处理器、任务节点调度器、一个或者多个任务队列处理器、存储有计算机程序的存储器,其中,数据库包括:目标有向无环图对应的原始任务节点列表A={A1,……,Aj,……,Am},Aj=(Aʹj,YAʹjg),A'j为第j个原始任务节点ID,YAʹjg为Aʹj对应的第g个历史执行时间,j的取值为1到m,m为目标有向无环图对应的原始任务节点的数量,g的取值为1到zj,zj为Aʹj对应的历史执行时间的数量,当计算机程序被处理器执行时,实现如下步骤:
S100、基于A,获取目标有向无环图对应的初始任务节点列表B0={B0 1,……,B0 x,……B0 p},B0 x=(Bʹ0 x,YBʹ0 xe),Bʹ0 x为第x个初始任务节点ID,YBʹ0 xe为Bʹ0 x对应的第e个历史执行时间,x的取值为1到p,p为目标有向无环图对应的初始任务节点的数量,e的取值为1到hx,hx为Bʹ0 x对应的历史执行时间的数量,其中,任一初始任务节点为当Aj对应的任务状态为第一任务状态时的原始任务节点,所述第一任务状态为当前任务节点可被执行状态;
S200、基于B0,获取B0对应的第一等待时长列表T0={T0 1,……,T0 x,……,T0 p},T0 x为B0 x对应的第一等待时长,T0 x符合如下条件:
Figure DEST_PATH_IMAGE001
其中,q0为B0对应的时间点处于第二任务状态的原始任务节点的数量,q0 x为B0 x对应的全部子节点的数量,所述第二任务状态为当前任务节点不可被执行状态;
S300、对T0进行排序,获取第二等待时长列表Tʹ0={Tʹ0 1,……,Tʹ0 x,……,Tʹ0 p},Tʹ0 x为第x个第二等待时长,其中,Tʹ0 x<Tʹ0 x+1
S400、通过任务节点调度器将前k个Tʹ0 x对应的初始任务节点分配至任务队列处理器中,获取任务队列处理对应的任务执行结果,并将所述任务执行结果对应的原始任务节点状态变更为第三任务状态,所述第三任务状态为当前任务节点已经被执行完成状态;
S500、基于任务队列处理对应的任务执行结果,获取目标任务节点集B={B1,……,Br,……,Bs},Br为第r个时间点对应的目标任务节点列表,r的取值范围为1到s,s为目标有向无环图对应的目标任务节点列表的数量;
S600、当r=s且A中所有原始任务节点任务状态全部处于第三任务状态时,获取目标有向无环图对应的目标任务结果。
本发明至少具有以下有益效果:通过获取初始任务节点对应的初始时间,并且基于初始任务节点对应的初始时间,得到初始任务节点对应的初始潜在等待时间,并将初始潜在等待时间由小至大进行排序,进而采用任务节点调度器为任务队列处理器分配初始任务节点,通过更快的执行得到初始任务的结果,从而使原始任务节点能够更快由第二任务状态转换为第一任务状态,因此,节省了时间资源,提高了工作效率;还通过设置的指令处理器对任务队列处理器进行监听,及时发现在r-1时间点处于非工作状态的任务队列处理器,并且通过指令处理器将任务队列处理器得到的中间任务节点结果传送至调度器,任务节点调度器通过接收到的中间任务节点结果,以获取到第r个目标任务列表,并通过任务节点调度器为非工作状态的任务队列处理器分配目标任务节点,因此,无需对任务队列处理器设置固定时间的检测模块,节省了处理器固有资源,并且采用实时对任务队列管理器进行实时监听的方式,使任务队列处理器连续不间断的执行任务,节省了时间资源,提高了任务队列处理器的工作效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种获取有向无环图任务结果的数据处理***执行计算机程序的流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明实施例提供一种获取有向无环图任务结果的数据处理***,所述***包括:数据库、处理器、任务节点调度器、一个或者多个任务队列处理器、存储有计算机程序的存储器,其中,所述数据库包括:目标有向无环图对应的原始任务节点列表A={A1,……,Aj,……,Am},Aj=(Aʹj,YAʹjg),A'j为第j个原始任务节点ID,YAʹjg为Aʹj对应的第g个历史执行时间,j的取值为1到m,m为目标有向无环图对应的原始任务节点的数量,g的取值为1到zj,zj为Aʹj对应的历史执行时间的数量。
具体地,Aj=(ASj,ZTj),ASj为Aj对应的上层任务节点数量,ZTj为Aj对应的当前工作状态。
进一步地,通过拓扑排序技术对目标有向无环图进行拆分获取Aj并且在对目标有向无环图进行拆分的同时对Aj进行解析,进而获取Aj对应的ASj
进一步地,本领域技术人员知晓,任意一种对目标有向无环图进行拆分与解析的拓扑排序方式均落入本发明的保护范围内,在此不再赘述。
进一步地,本领域技术人员可根据实际需求设置任务队列处理器的数量。
如图1所示,当所述计算机程序被处理器执行时,实现如下步骤:
S100、基于A,获取目标有向无环图对应的初始任务节点列表B0={B0 1,……,B0 x,……B0 p},B0 x=(Bʹ0 x,YBʹ0 xe),Bʹ0 x为第x个初始任务节点ID,YBʹ0 xe为Bʹ0 x对应的第e个历史执行时间,x的取值为1到p,p为目标有向无环图对应的初始任务节点的数量,e的取值为1到hx,hx为Bʹ0 x对应的历史执行时间的数量,其中,任一初始任务节点为当Aj对应的任务状态为第一任务状态时的原始任务节点,所述第一任务状态为当前任务节点可被执行状态。
S200、基于B0,获取B0对应的第一等待时长列表T0={T0 1,……,T0 x,……,T0 p},T0 x为B0 x对应的第一等待时长,T0 x符合如下条件:
Figure 163799DEST_PATH_IMAGE002
其中,q0为B0对应的时间点处于第二任务状态的原始任务节点的数量,q0 x为B0 x对应的全部子节点的数量,所述第二任务状态为当前任务节点不可被执行状态。
具体地,所述第二任务状态为当前任务节点不可被执行状态,可以理解为处于第二任务节点的原始任务节点对应的上层节点中,存在没有得到结果的原始任务节点。
进一步地,所述第一等待时间为初始任务节点如果被延后执行带来的潜在等待时间。
S300、对T0进行排序,获取第二等待时长列表Tʹ0={Tʹ0 1,……,Tʹ0 x,……,Tʹ0 p},Tʹ0 x为第x个第二等待时长,其中,Tʹ0 x<Tʹ0 x+1
S400、通过任务节点调度器将前k个Tʹ0 x对应的初始任务节点分配至任务队列处理器中,获取任务队列处理对应的任务执行结果,并将所述任务执行结果对应的原始任务节点状态变更为第三任务状态,所述第三任务状态为当前任务节点已经被执行完成状态。
进一步地,所述任务队列处理器采用http协议进行接入,并基于http协议定义了统一的远程通信接口,使任务队列管理器可以接入任意***,上述,采用多线程技术使每个工作模块占用的固有资源少,相对于多进程技术,节省了服务器的固有资源,并且使用户可以同时设置对个的任务队列管理器,提高了工作效率。
进一步地,当n=1时,n为任务队列处理器的数量,可以理解为通过任务节点调度器为任务队列管理模块调度用时最短的初始任务节点,通过更快的执行得到初始任务的结果,从而使原始任务节点能够更快由第二任务状态转换为第一任务状态,因此,提高了工作效率。
进一步地,所述任务队列处理器为多线程的任务处理器。
优选地,当n>1时,可以理解为当前处理器剩余的固有资源的情况下,设置尽可能多的任务队列处理器,并且使用任务节点调度器为任务队列管理器分配初始任务节点,多个任务队列管理器同时执行初始任务节点,从而使原始任务节点能够更快由第二任务状态转换为第一任务状态,因此,提高了工作效率。
上述,S200-S400通过获取初始任务节点对应的初始时间,并且基于初始任务节点对应的初始时间,得到初始任务节点对应的初始潜在等待时间,并将初始潜在等待时间由小至大进行排序,进而采用任务节点调度器为任务队列处理器分配初始任务节点,通过更快的执行得到初始任务的结果,从而使原始任务节点能够更快由第二任务状态转换为第一任务状态,因此,节省了时间资源,提高了工作效率。
S500、基于任务队列处理对应的任务执行结果,获取目标任务节点集B={B1,……,Br,……,Bs},Br为第r个时间点对应的目标任务节点列表,r的取值范围为1到s,s为目标有向无环图对应的目标任务节点列表的数量。
具体地,所述***还包括任务指令处理器。
进一步地,所述任务指令处理器为基于钩子函数的指令处理器。
进一步地,本领域技术人员可根据实际需求设置所述钩子函数的类型,钩子函数的类型可包括:进程钩子函数、***钩子函数和线程钩子函数等,在此不再赘述。
进一步地,在本发明一个实施例中,当n=k时,还包括如下步骤获取Br
S5011、通过指令处理器监听任务队列处理器,当Br-1对应的时间点指令处理器监听到有一个或多个任务队列处理器处于非工作状态时,获取中间任务节点结果Sy r-1并将Sy r-1对应的原始任务节点状态更新为第三任务状态,y的取值为1到h,h为中间任务节点结果的数量,其中,中间任务节点结果为任务队列处理器执行Br-1中目标任务节点得到的结果;
S5012、获取Sy r-1对应的目标任务队列处理器列表Gr-1=(G1 r-1,...,Gy r-1,...,Gq r-1),Gy r-1为第y个目标任务队列处理器,y的取值为1到q,q为目标任务队列处理器的数量,其中,目标任务队列处理器为在Br-1对应的时间点处于非工作状态的任务队列处理器;
S5013、通过指令处理器将Sy r-1发送至任务节点调度器;
S5014、任务节点调度器通过接收到的Sy r-1,获取Br=(Br1,...,Brd,...,Brtr),Brd为Br对应的第d个目标任务节点,d的取值为1到tr,tr为目标任务节点的数量,其中,所述目标任务节点为Br对应的时间点处于第一任务状态的原始任务节点;
S5015、基于Br,通过任务节点调度器将Brd分配至Gy r-1对应的目标任务队列处理器。
具体地,通过任务节点调度器将Bre分配至Gy r-1对应的目标任务队列处理器采用与本发明S200至S400中相同步骤进行分配。
上述,S5011-S5015通过设置的指令处理器对任务队列处理器进行监听,及时发现在r-1时间点处于非工作状态的任务队列处理器,并且通过指令处理器将任务队列处理器得到的中间任务节点结果传送至调度器,任务节点调度器通过接收到的中间任务节点结果,以获取到第r个目标任务列表,并通过任务节点调度器为非工作状态的任务队列处理器分配目标任务节点,因此,无需对任务队列处理器设置固定时间的检测模块,节省了处理器固有资源,并且采用实时对任务队列管理器进行实时监听的方式,使任务队列处理器连续不间断的执行任务,节省了时间资源,提高了任务队列处理器的工作效率。
进一步地,在本发明另一实施例中,还包括如下步骤获取Br
S5021、通过指令处理器监听任务队列处理器,当Br-1对应的时间点指令处理器监听到有一个或多个任务队列处理器处于非工作状态时,获取中间任务节点结果Sy r-1并将Sy r-1对应的原始任务节点状态更新为第三任务状态,y的取值为1到h,h为中间任务节点结果的数量,其中,中间任务节点结果为任务队列处理器执行Br-1中目标任务节点得到的结果;
S5022、获取Sy r-1对应的目标任务队列处理器列表Gr-1=(G1 r-1,...,Gy r-1,...,Gh r-1),Gy r-1为第y个目标任务队列处理器,y的取值为1到q,q为目标任务队列处理器的数量,其中,目标任务队列处理器为在Br-1对应的时间点处于非工作状态的任务队列处理器;
S5023、通过指令处理器将Sy r-1发送至任务节点调度器;
S5024、任务节点调度器通过接收到的Sy r-1,获取Br=(Br1,...,Brd,...,Brtr),Brd为Br对应的第d个目标任务节点,d的取值为1到tr,tr为目标任务节点的数量,其中,所述目标任务节点为Br对应的时间点处于第一任务状态的原始任务节点;
S5025、基于Br,获取Br对应的第三等待时长列表Tr={Tr 1,……,Tr d,……,Tr tr},Tr d为Brd对应的第三等待时长;
具体地,所述第三等待时长与上述第一等待时长算法相同,在此不再赘述。
S5026、基于Tr,获取第r时间点对应的中间任务节点列表Bʹr={Bʹr1,……,Bʹrc,……,Bʹrw},Bʹrc为第c个中间任务节点,c的取值为1到w,w为中间任务节点的数量,所述中间任务节点为Bʹrc对应的第三等待时长小于预设等待时长t0的目标任务节点。
具体地,本领域技术任意可根据实际需求设置所述t0的值,在此不再赘述。
S5027、通过任务节点调度器将Bʹrc分配至Gy r-1对应的目标任务队列处理器;
S5028、当Br中所有的目标任务节点对应的第三等待时间均大于t0时,那么将Tr由小至大进行排序,获取第四等待时间列表Tʹr={Tʹr 1,……,Tʹr d,……,Tʹr tr},Tʹr d为Brd对应的第四等待时长;
S5029、通过任务节点调度器将前h个Tʹr d对应的初始任务节点分配至Gy r-1对应的目标任务队列处理器。
上述,S5021-S5029通过通过设置的指令处理器对任务队列处理器进行监听,及时发现在r-1时间点处于非工作状态的任务队列处理器,并且通过指令处理器将任务队列处理器得到的中间任务节点结果传送至调度器,任务节点调度器通过接收到的中间任务节点结果,以获取到第r个目标任务列表,并通过任务节点调度器为处于非工作状态的任务队列处理器分配小于预设等待阈值的目标任务节点,因此,无需对任务队列处理器设置固定时间的检测模块,节省了处理器固有资源,并且采用实时对任务队列管理器进行实时监听的方式,使任务队列处理器连续不间断的执行任务且优先执行用时低的任务节点,可以尽快使任务节点处于第一任务状态,节省了时间资源,提高了任务队列处理器的工作效率。
S600、当r=s且A中所有原始任务节点任务状态全部处于第三任务状态时,获取目标有向无环图对应的目标任务结果。
具体地,所述目标任务结果为目标有向无环图的最终结果,可以理解为目标有向无环图最后执行的任务节点所对应的结果。
本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的***或服务器产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置和计算机设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
虽然已经通过示例对本发明的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本发明的范围。本领域的技术人员还应理解,可以对实施例进行多种修改而不脱离本发明的范围和精神。本发明开的范围由所附权利要求来限定。

Claims (6)

1.一种获取有向无环图任务结果的数据处理***,其特征在于,所述***包括:数据库、处理器、任务节点调度器、一个或者多个任务队列处理器、存储有计算机程序的存储器,其中,所述数据库包括:目标有向无环图对应的原始任务节点列表A={A1,……,Aj,……,Am},Aj=(Aʹj,YAʹjg),A'j为第j个原始任务节点ID,YAʹjg为Aʹj对应的第g个历史执行时间,j的取值为1到m,m为目标有向无环图对应的原始任务节点的数量,g的取值为1到zj,zj为Aʹj对应的历史执行时间的数量,当所述计算机程序被处理器执行时,实现如下步骤:
S100、基于A,获取目标有向无环图对应的初始任务节点列表B0={B0 1,……,B0 x,……B0 p},B0 x=(Bʹ0 x,YBʹ0 xe),Bʹ0 x为第x个初始任务节点ID,YBʹ0 xe为Bʹ0 x对应的第e个历史执行时间,x的取值为1到p,p为目标有向无环图对应的初始任务节点的数量,e的取值为1到hx,hx为Bʹ0 x对应的历史执行时间的数量,其中,任一初始任务节点为当Aj对应的任务状态为第一任务状态时的原始任务节点,所述第一任务状态为当前任务节点可被执行状态;
S200、基于B0,获取B0对应的第一等待时长列表T0={T0 1,……,T0 x,……,T0 p},T0 x为B0 x对应的第一等待时长,T0 x符合如下条件:
Figure DEST_PATH_IMAGE002
其中,q0为B0对应的时间点处于第二任务状态的原始任务节点的数量,q0 x为B0 x对应的全部子节点的数量,所述第二任务状态为当前任务节点不可被执行状态;
S300、对T0进行排序,获取第二等待时长列表Tʹ0={Tʹ0 1,……,Tʹ0 x,……,Tʹ0 p},Tʹ0 x为第x个第二等待时长,其中,Tʹ0 x<Tʹ0 x+1
S400、通过任务节点调度器将前k个Tʹ0 x对应的初始任务节点分配至任务队列处理器中,获取任务队列处理对应的任务执行结果,并将所述任务执行结果对应的原始任务节点状态变更为第三任务状态,所述第三任务状态为当前任务节点已经被执行完成状态;
S500、,获取目标任务节点集B={B1,……,Br,……,Bs},Br为第r个时间点对应的目标任务节点列表,r的取值范围为1到s,s为目标有向无环图对应的目标任务节点列表的数量;
S600、当r=s且A中所有原始任务节点任务状态全部处于第三任务状态时,获取目标有向无环图对应的目标任务结果。
2.根据权利要求1所述的***,其特征在于,k=n,n为任务队列处理器的数量。
3.根据权利要求2所述的***,其特征在于,所述***还包括任务指令处理器,在S500中,还包括如下步骤获取Br
S5011、通过指令处理器监听任务队列处理器,当Br-1对应的时间点指令处理器监听到有一个或多个任务队列处理器处于非工作状态时,获取中间任务节点结果Sy r-1并将Sy r-1对应的原始任务节点状态更新为第三任务状态,y的取值为1到h,h为中间任务节点结果的数量,其中,中间任务节点结果为任务队列处理器执行Br-1中目标任务节点得到的结果;
S5012、获取Sy r-1对应的目标任务队列处理器列表Gr-1=(G1 r-1,...,Gy r-1,...,Gq r-1),Gy r-1为第y个目标任务队列处理器,y的取值为1到q,q为目标任务队列处理器的数量,其中,目标任务队列处理器为在Br-1对应的时间点处于非工作状态的任务队列处理器;
S5013、通过指令处理器将Sy r-1发送至任务节点调度器;
S5014、任务节点调度器通过接收到的Sy r-1,获取Br=(Br1,...,Brd,...,Brtr),Brd为Br对应的第d个目标任务节点,d的取值为1到tr,tr为目标任务节点的数量,其中,所述目标任务节点为Br对应的时间点处于第一任务状态的原始任务节点;
S5015、基于Br,通过任务节点调度器将Brd分配至Gy r-1对应的目标任务队列处理器。
4.根据权利要求1所述的***,其特征在于,Aj=(ASj,ZTj),ASj为Aj对应的上层任务节点数量,ZTj为Aj对应的当前工作状态。
5.根据权利要求3所述的***,其特征在于,所述任务指令处理器为基于钩子函数的指令处理器。
6.根据权利要求1所述的***,其特征在于,所述任务队列处理器为多线程的任务处理器。
CN202211069686.0A 2022-09-02 2022-09-02 一种获取有向无环图任务结果的数据处理*** Active CN115145711B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211069686.0A CN115145711B (zh) 2022-09-02 2022-09-02 一种获取有向无环图任务结果的数据处理***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211069686.0A CN115145711B (zh) 2022-09-02 2022-09-02 一种获取有向无环图任务结果的数据处理***

Publications (2)

Publication Number Publication Date
CN115145711A CN115145711A (zh) 2022-10-04
CN115145711B true CN115145711B (zh) 2022-12-23

Family

ID=83415934

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211069686.0A Active CN115145711B (zh) 2022-09-02 2022-09-02 一种获取有向无环图任务结果的数据处理***

Country Status (1)

Country Link
CN (1) CN115145711B (zh)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10467152B2 (en) * 2016-05-18 2019-11-05 International Business Machines Corporation Dynamic cache management for in-memory data analytic platforms
US20190347603A1 (en) * 2018-05-14 2019-11-14 Msd International Gmbh Optimizing turnaround based on combined critical paths
CN108769254B (zh) * 2018-06-25 2019-09-20 星环信息科技(上海)有限公司 基于抢占式调度的资源共享使用方法、***及设备
CN109561148B (zh) * 2018-11-30 2021-03-23 湘潭大学 边缘计算网络中基于有向无环图的分布式任务调度方法
CN114662932B (zh) * 2022-03-24 2024-07-19 重庆邮电大学 一种节点分级的工作流类定时任务调度方法

Also Published As

Publication number Publication date
CN115145711A (zh) 2022-10-04

Similar Documents

Publication Publication Date Title
US8219997B2 (en) Execution the job that is divided into job tasks based on the estimated completion time
US8434085B2 (en) Scalable scheduling of tasks in heterogeneous systems
CN111625331B (zh) 任务调度方法、装置、平台、服务器及存储介质
CN104915253B (zh) 一种作业调度的方法及作业处理器
CN109656782A (zh) 可视化调度监控方法、装置及服务器
CN107430526B (zh) 用于调度数据处理的方法和节点
Keerthika et al. A hybrid scheduling algorithm with load balancing for computational grid
CN114816709A (zh) 任务调度方法、装置、服务器及可读存储介质
CN115292039A (zh) 一种面向异构计算平台的多任务分布式调度负载均衡方法
CN115329005A (zh) 多集群的协同方法、***、装置及计算机可读存储介质
CA2631255A1 (en) Scalable scheduling of tasks in heterogeneous systems
WO2019117767A1 (en) Method, function manager and arrangement for handling function calls
CN115145711B (zh) 一种获取有向无环图任务结果的数据处理***
US7047531B2 (en) Method and apparatus for automated network polling
CN110175078B (zh) 业务处理方法及装置
CN109189581B (zh) 一种作业调度方法和装置
CN110750362A (zh) 生物信息的分析方法、装置和存储介质
CN111143210A (zh) 一种测试任务调度方法和***
CN113434591B (zh) 数据处理方法以及装置
CN115712572A (zh) 任务的测试方法、装置、存储介质及电子装置
JP2003084989A (ja) プライオリティ動的制御方式、プライオリティ動的制御方法およびプライオリティ動的制御用プログラム
CN113518974A (zh) 用于找出并标识网络中的计算节点的***和方法
CN111861012A (zh) 一种测试任务执行时间预测方法及最优执行节点选择方法
CN111782688A (zh) 基于大数据分析的请求处理方法、装置、设备及存储介质
JP2010009288A (ja) マルチプロセッサシステム及びプログラム実行方法

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
GR01 Patent grant
GR01 Patent grant