CN110837412A - 一种作业就绪状态判断方法、装置、设备和存储介质 - Google Patents
一种作业就绪状态判断方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN110837412A CN110837412A CN201911119818.4A CN201911119818A CN110837412A CN 110837412 A CN110837412 A CN 110837412A CN 201911119818 A CN201911119818 A CN 201911119818A CN 110837412 A CN110837412 A CN 110837412A
- Authority
- CN
- China
- Prior art keywords
- event
- target
- job
- weight
- dependent event
- 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.)
- Granted
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)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明实施例公开了一种作业就绪状态判断方法、装置、设备和存储介质。其中方法包括:接收目标依赖事件,并获取目标依赖事件id;根据目标依赖事件id,从预先构建的作业与事件缓存表中查找与目标依赖事件id对应的目标作业id;修改作业与事件缓存表中的目标依赖事件id对应的权值为预设目标值,使作业与事件缓存表自动按照修改后的权值大小,以升序排序的方式,对目标作业id对应的各个依赖事件id进行排序;获取排序后排在首位的依赖事件id对应的权值,并根据权值大小,确定目标作业是否准备就绪。本发明实施例只需判断排序后的首位依赖事件id对应的权值,即可确定作业是否就绪,提升了作业就绪状态判断效率。
Description
技术领域
本发明实施例涉及作业调度技术领域,尤其涉及一种作业就绪状态判断方法、装置、设备和存储介质。
背景技术
在作业调度系统中,作业指的是计算机系统中的批处理任务,所能够执行的最小动作单元,一个作业是否可以被调度(即作业就绪),前提是这个作业所依赖的所有条件都就绪。由于调度系统需要调度的作业很多(多的情况,能达到百万个以上),如何把依赖条件都就绪的作业快速调起就是衡量一个调度产品优劣的重要指标之一。而要快速调起依赖条件都就绪的作业,必须要快速高效地判断作业的依赖条件是否就绪。
目前常用的方法主要有如下两种:
(1)通过扫描进程轮询数据库表的方式来判断,具体的,通过扫描进程轮询作业列表,对作业列表中的作业从头到尾逐个进行扫描,并逐个判断该作业是否就绪,如果就绪则置就绪状态标志,等待执行。若未就绪,等待扫描进程下一轮继续扫描、判断。
(2)对于采用事件驱动的调度系统,该系统的机制不再采用扫描进程轮询作业列表的方式,而是基于事件产生或到达调度系统时,判断该事件对应的作业是否就绪的方法其中每个作业都配置有需要的事件。该调度系统设有事件接收机处理进程,当事件到达调度系统时,由该进程接收到达的事件并进行处理,判断该事件对应的作业的其它所有事件是否都到达,若该事件对应的作业的所有事件都到达,置该作业状态为就绪。除此需要进行并发控制,防止出现同一个作业的多个事件同时到达时,各个事件彼此判断对方没有到达,而导致作业状态判断错误的情况。
但这两种方法都存在一定的不足:第一种方法,通过轮询的方式判断,扫描进程需要从头到尾逐个作业进行扫描,在作业量大的情况时,扫描一遍作业列表耗时长,效率低下且系统开销大。第二种方法,每个事件到达时都需要判断该事件对应的作业的其它所有事件是否都到达,使得判断作业就绪状态的效率低。而且还需要进行并发控制,使得系统负载大。
发明内容
本发明实施例提供一种作业就绪状态判断方法、装置、设备和存储介质,以达到在降低系统开销的情况下,提升作业就绪状态判断效率的目的。
第一方面,本发明实施例提供了一种作业就绪状态判断方法,该方法包括:
接收目标依赖事件,获取目标依赖事件的属性信息,其中,所述属性信息至少包括目标依赖事件id;
根据所述目标依赖事件id,从预先构建的作业与事件缓存表中查找与所述目标依赖事件id对应的目标作业id;其中,所述作业与事件缓存表中存储有至少一个作业id,每个作业id对应至少一个依赖事件id,每个依赖事件id对应一个权值,所述权值用于表征依赖事件是否到达;
修改所述作业与事件缓存表中的目标依赖事件id对应的权值为预设目标值,使所述作业与事件缓存表自动按照修改后的权值大小,以升序排序的方式,对目标作业id对应的各个依赖事件id进行排序,其中,权值为预设目标值表征所述目标依赖事件已到达;
获取排序后排在首位的依赖事件id对应的权值,并根据权值大小,确定目标作业是否准备就绪。
第二方面,本发明实施例还提供了一种作业就绪状态判断装置,该装置包括:
接收模块,用于接收目标依赖事件,获取目标依赖事件的属性信息,其中所述属性信息为目标依赖事件id;
查询模块,用于根据所述目标依赖事件id,从预先构建的作业与事件缓存表中查找与所述目标依赖事件id对应的目标作业id;其中所述作业与事件缓存表中存储有至少一个作业id,每个作业id对应至少一个依赖事件id,每个依赖事件id对应一个权值,所述权值用于表征依赖事件是否到达;
权值修改模块,用于修改所述作业与事件缓存表中的目标依赖事件id对应的权值为预设目标值,使所述作业与事件缓存表自动按照修改后的权值大小,以升序排序的方式,对目标作业id对应的各个依赖事件id进行排序,其中,权值为预设目标值表征所述目标依赖事件已到达;
判断模块,用于获取排序后排在首位的依赖事件id对应的权值,并根据权值大小,确定目标作业是否准备就绪。
第三方面,本发明实施例还提供了一种设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本发明任一实施例所述的作业就绪状态判断方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任一实施例所述的作业就绪状态判断方法。
本发明实施例通过在一个或多个依赖事件同时到达时,确定其对应的目标作业id,而且只需修改依赖事件id对应的权值即可表征依赖事件已到达,而不需要进行并发控制,降低了系统负载。而在在修改完依赖事件id对应的权值后,作业与事件缓存表自动对目标作业id对应的全部依赖事件id按照权值大小进行升序排序,进而只需判断首位的依赖事件id的权值大小,即可确定目标作业是否准备就绪,由此只需进行一次判断即可确定目标作业是否就绪,减少了判断事件是否到达的次数,提升了作业就绪状态判断效率。
附图说明
图1为本发明实施例一中的作业就绪状态判断方法的流程图;
图2是本发明实施例二中的作业就绪状态判断装置的结构示意图;
图3是本发明实施例三中的设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的作业就绪状态判断方法的流程图,本实施例可适用调度系统判断作业是否准备就绪的情况,该方法可以由作业就绪状态判断装置来执行,该装置可以采用软件和/或硬件的方式实现,并可集成在电子设备上,例如服务器或计算机设备上。
本发明实施例中,为实现作业就绪状态判断方法,需要预先建立作业与事件缓存表。可选的,首先获取作业与事件之间的依赖关系,确定每个作业对应的依赖事件;再基于sort-set数据结构构建作业与事件缓存表,其中,sort-set是一种有序集合,该集合中每个元素都关联一个权值。构建的作业与事件缓存表中存储有至少一个作业id,每个作业id对应至少一个依赖事件id,每个依赖事件id对应一个权值,所述权值用于表征依赖事件是否到达。
示例性的,参见表1,其示出了作业与事件缓存表的结构,其中,Key为作业id,member为作业对应的依赖事件id(Event_id),score(即权值)为事件到达标志。本发明实施例中,可选的,score的值为0时表示事件未到达,为1时表示事件到达。在作业实例初始化时,作业对应的依赖事件全部部署为0。在此需要说明的是,为了提升作业就绪状态判定效率,将构建后的作业与事件缓存表存储在redis中。
表1.作业与事件缓存表
Key member score
在上述基础上,如图1所示,所述作业就绪状态判断方法具体包括:
S101、接收目标依赖事件,获取目标依赖事件的属性信息,其中,所述属性信息至少包括目标依赖事件id。
其中,所述目标依赖事件可选的为前序作业完成事件、外部文件到达事件、定时时间到达事件等,在此不做具体限定。当目标依赖事件产生时,接收该目标依赖事件,并获取该目标依赖事件的属性信息,其中,所述属性信息至少包括目标依赖事件id。示例性的,若目标依赖事件为外部文件到达事件,则其属性信息除了目标依赖事件id外,还包括文件大小、格式等。
S102、根据所述目标依赖事件id,从预先构建的作业与事件缓存表中查找与所述目标依赖事件id对应的目标作业id。
其中,根据目标依赖事件id从预先构建的作业与事件缓存表中查找与其对应的目标作业id,也即是确定哪些作业依赖该目标依赖事件。在此需要说明的是,如果存在多个作业都依赖该目标依赖事件,则针对任每个作业,执行S103-S105操作。
S103、修改所述作业与事件缓存表中的目标依赖事件id对应的权值为预设目标值,使所述作业与事件缓存表自动按照修改后的权值大小,以升序排序的方式,对目标作业id对应的各个依赖事件id进行排序,其中,权值为预设目标值以表征所述目标依赖事件已到达。
其中,预设目标值可选的为1,由此,当目标依赖事件到达时,将目标依赖事件id对应的权值0修改为1,以表示目标依赖事件已到达。在此需要说明的是,如果一个作业对应的多个依赖事件同时到达,只需修改各个依赖事件id对应的权值为预设目标值,即可表征多个依赖事件都已到达,而不需要进行并发控制,由此可降低系统负担。
进一步的,作业与事件缓存表是基于sort-set数据类型构建的,而sort-set数据类型的数据具有自动排序的功能,由此使得作业与事件缓存表可自动根据各个依赖事件id对应的权值大小进行排序。具体的,在S103修改完目标依赖事件id对应的权值后,作业与事件缓存表响应于权值的变化,自动针对目标作业id对应各个依赖事件id,按照各依赖事件id对应的修改后的权值大小,可选的,以升序排序的方式进行排序。
S104、获取排序后排在首位的依赖事件id对应的权值,并根据权值大小,确定目标作业是否准备就绪。
本发明实施例中,作业与事件缓存表按照权值大小,以升序的方式对目标作业id对应的各个依赖事件id进行排序,由于各依赖事件id对应的初始权值小于预设目标值,因此排序后如果排在首位的依赖事件id对应的权值为预设目标值,则表明排在其后的所有依赖事件id对应的权值也为预设目标值,也即是该目标作业对应的所有依赖事件均已到达,该目标作业准备就绪。
进一步的,再确定目标作业准备就绪后,将目标作业id对应的状态标志修改为就绪状态,以便调度系统根据就绪的状态标志以执行该目标。由此实现了只需判断一个事件的权值即可确定作业是否准备就绪,提升了就绪状态判断效率,进而提升作业的调度效率。
进一步的,如果排在首位的依赖事件id对应的权值不是预设目标值,则表明至少排在首位的依赖事件id对应的依赖事件还没有到达,也即是目标作业的依赖事件没有全部到达,目标作为未准备就绪。因此继续执行所述接收目标依赖事件,获取目标依赖事件的属性信息的操作。
现已具体示例进行说明:
例如:作业(Job_id):J900187654321有四个依赖事件,分别为event_1、event_2、event_3、event_4。作业J900187654321及事件event_1、event_2、event_3、event_4在作业与事件缓存表中的初始值如下:
表2.初始作业与缓存表
假设event_1最先到达,则更新作业事件缓存表的score为1,本示例中作业与事件缓存表具有升序排序的功能,因此在将event_1对应的权值改为1后,执行排序的功能,经最大的值(event_1)则排列在最后一位,具体的,参见表3。
表3.排序后的作业与缓存表
此时获取该作业中排在首位的事件id的权值,得到event_2及其权值0,由于获取到的权值是0,说明该作业未就绪(所有依赖事件未全部到达)。
当所有事件都到达时,则作业与事件缓存表更新如下:
表4.准备就绪的作业与缓存表
此时获取该作业中排在首位的事件id的权值,得到event_2及其权值1。由于获取到的权值是1,说明该作业已就绪(所有依赖事件全部到达),该作业可以进行调度执行。
本发明实施例中,通过在一个或多个依赖事件同时到达时,确定其对应的目标作业id,而且只需修改依赖事件id对应的权值即可表征依赖事件已到达,而不需要进行并发控制,降低了系统负载。而在在修改完依赖事件id对应的权值后,对目标作业id对应的全部依赖事件id按照权值大小进行升序排序,进而只需判断首位依赖事件id的权值大小,即可确定目标作业是否准备就绪,由此只需进行一次判断即可确定目标作业是否就绪,减少了判断事件是否到达的次数,提升了作业就绪状态判断效率。
实施例二
图2是本发明实施例二中的作业就绪状态判断装置的结构示意图,该装置可适用调度系统判断作业是否准备就绪的情况。如图2所示,该装置包括:
接收模块201,用于接收目标依赖事件,获取目标依赖事件的属性信息,其中所述属性信息为目标依赖事件id;
查询模块202,用于根据所述目标依赖事件id,从预先构建的作业与事件缓存表中查找与所述目标依赖事件id对应的目标作业id;其中所述作业与事件缓存表中存储有至少一个作业id,每个作业id对应至少一个依赖事件id,每个依赖事件id对应一个权值,所述权值用于表征依赖事件是否到达;
权值修改模块203,用于修改所述作业与事件缓存表中的目标依赖事件id对应的权值为预设目标值,使所述作业与事件缓存表自动按照修改后的权值大小,以升序排序的方式,对目标作业id对应的各个依赖事件id进行排序,其中,权值为预设目标值表征所述目标依赖事件已到达;
判断模块204,用于获取排序后排在首位的依赖事件id对应的权值,并根据权值大小,确定目标作业是否准备就绪。
本发明实施例中,通过在一个或多个依赖事件同时到达时,确定其对应的目标作业id,而且只需修改依赖事件id对应的权值即可表征依赖事件已到达,而不需要进行并发控制,降低了系统负载。而在在修改完依赖事件id对应的权值后,作业与事件缓存表自动对目标作业id对应的全部依赖事件id按照权值大小进行升序排序,进而只需判断首位的依赖事件id的权值大小,即可确定目标作业是否准备就绪,由此只需进行一次判断即可确定目标作业是否就绪,减少了判断事件是否到达的次数,提升了作业就绪状态判断效率。
可选的,所述判断模块集体用于:
如果排在首位的依赖事件id对应的权值大小为所述预设目标值,确定目标作业准备就绪,并将目标作业id对应的状态标志修改为就绪状态。
可选的,所述装置还包括:
循环模块,用于如果排在首位的依赖事件id对应的权值不是预设目标值,则继续执行接收目标依赖事件,获取目标依赖事件的属性信息的操作。
可选的,所述预先构建的作业与事件缓存表存储在redis中。
本发明实施例所提供的作业就绪状态判断装置可执行本发明任意实施例所提供的作业就绪状态判断方法,具备执行方法相应的功能模块和有益效果。
实施例三
图3为本发明实施例三提供的一种设备的结构示意图。图3示出了适于用来实现本发明实施方式的示例性设备12的框图。图3显示的设备12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图3所示,设备12以通用计算设备的形式表现。设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。设备12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图3未显示,通常称为“硬盘驱动器”)。尽管图3中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该设备12交互的设备通信,和/或与使得该设备12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与设备12的其它模块通信。应当明白,尽管图中未示出,可以结合设备12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的作业就绪状态判断方法,该方法包括:
接收目标依赖事件,获取目标依赖事件的属性信息,其中,所述属性信息至少包括目标依赖事件id;
根据所述目标依赖事件id,从预先构建的作业与事件缓存表中查找与所述目标依赖事件id对应的目标作业id;其中,所述作业与事件缓存表中存储有至少一个作业id,每个作业id对应至少一个依赖事件id,每个依赖事件id对应一个权值,所述权值用于表征依赖事件是否到达;
修改所述作业与事件缓存表中的目标依赖事件id对应的权值为预设目标值,使所述作业与事件缓存表自动按照修改后的权值大小,以升序排序的方式,对目标作业id对应的各个依赖事件id进行排序,其中,权值为预设目标值表征所述目标依赖事件已到达;
获取排序后排在首位的依赖事件id对应的权值,并根据权值大小,确定目标作业是否准备就绪。
实施例四
本发明实施例四还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例所提供的作业就绪状态判断方法,该方法包括:
接收目标依赖事件,获取目标依赖事件的属性信息,其中,所述属性信息至少包括目标依赖事件id;
根据所述目标依赖事件id,从预先构建的作业与事件缓存表中查找与所述目标依赖事件id对应的目标作业id;其中,所述作业与事件缓存表中存储有至少一个作业id,每个作业id对应至少一个依赖事件id,每个依赖事件id对应一个权值,所述权值用于表征依赖事件是否到达;
修改所述作业与事件缓存表中的目标依赖事件id对应的权值为预设目标值,使所述作业与事件缓存表自动按照修改后的权值大小,以升序排序的方式,对目标作业id对应的各个依赖事件id进行排序,其中,权值为预设目标值表征所述目标依赖事件已到达;
获取排序后排在首位的依赖事件id对应的权值,并根据权值大小,确定目标作业是否准备就绪。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种作业就绪状态判断方法,其特征在于,所述方法包括:
接收目标依赖事件,获取目标依赖事件的属性信息,其中,所述属性信息至少包括目标依赖事件id;
根据所述目标依赖事件id,从预先构建的作业与事件缓存表中查找与所述目标依赖事件id对应的目标作业id;其中,所述作业与事件缓存表中存储有至少一个作业id,每个作业id对应至少一个依赖事件id,每个依赖事件id对应一个权值,所述权值用于表征依赖事件是否到达;
修改所述作业与事件缓存表中的目标依赖事件id对应的权值为预设目标值,使所述作业与事件缓存表自动按照修改后的权值大小,以升序排序的方式,对目标作业id对应的各个依赖事件id进行排序,其中,权值为预设目标值表征所述目标依赖事件已到达;
获取排序后排在首位的依赖事件id对应的权值,并根据权值大小,确定目标作业是否准备就绪。
2.根据权利要求1所述的方法,其特征在于,根据权值大小,确定目标作业是否准备就绪,包括:
如果排在首位的依赖事件id对应的权值大小为所述预设目标值,则确定目标作业准备就绪,并将目标作业id对应的状态标志修改为就绪状态。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
如果排在首位的依赖事件id对应的权值不是预设目标值,则继续执行所述接收目标依赖事件,获取目标依赖事件的属性信息的操作。
4.根据权利要求1所述的方法,其特征在于,所述预先构建的作业与事件缓存表存储在redis中。
5.一种作业就绪状态判断装置,其特征在于,所述装置包括:
接收模块,用于接收目标依赖事件,获取目标依赖事件的属性信息,其中所述属性信息为目标依赖事件id;
查询模块,用于根据所述目标依赖事件id,从预先构建的作业与事件缓存表中查找与所述目标依赖事件id对应的目标作业id;其中所述作业与事件缓存表中存储有至少一个作业id,每个作业id对应至少一个依赖事件id,每个依赖事件id对应一个权值,所述权值用于表征依赖事件是否到达;
权值修改模块,用于修改所述作业与事件缓存表中的目标依赖事件id对应的权值为预设目标值,使所述作业与事件缓存表自动按照修改后的权值大小,以升序排序的方式,对目标作业id对应的各个依赖事件id进行排序,其中,权值为预设目标值表征所述目标依赖事件已到达;
判断模块,用于获取排序后排在首位的依赖事件id对应的权值,并根据权值大小,确定目标作业是否准备就绪。
6.根据权利要求5所述的装置,其特征在于,所述判断模块集体用于:
如果排在首位的依赖事件id对应的权值大小为所述预设目标值,确定目标作业准备就绪,并将目标作业id对应的状态标志修改为就绪状态。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
循环模块,用于如果排在首位的依赖事件id对应的权值不是预设目标值,则继续执行接收目标依赖事件,获取目标依赖事件的属性信息的操作。
8.根据权利要求5所述的装置,其特征在于,所述预先构建的作业与事件缓存表存储在redis中。
9.一种计算机设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-4中任一所述的作业就绪状态判断方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-4中任一所述的作业就绪状态判断方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911119818.4A CN110837412B (zh) | 2019-11-15 | 2019-11-15 | 一种作业就绪状态判断方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911119818.4A CN110837412B (zh) | 2019-11-15 | 2019-11-15 | 一种作业就绪状态判断方法、装置、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110837412A true CN110837412A (zh) | 2020-02-25 |
CN110837412B CN110837412B (zh) | 2022-08-26 |
Family
ID=69576504
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911119818.4A Active CN110837412B (zh) | 2019-11-15 | 2019-11-15 | 一种作业就绪状态判断方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110837412B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114035769A (zh) * | 2021-10-20 | 2022-02-11 | 北京金山云网络技术有限公司 | 作业流控制方法、装置、电子设备及存储介质 |
CN117170889A (zh) * | 2023-11-01 | 2023-12-05 | 沐曦集成电路(上海)有限公司 | 异构非阻塞数据包同步处理系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7170989B1 (en) * | 2002-09-06 | 2007-01-30 | Sprint Communications Company L.P. | Transaction dependency manager |
CN103098056A (zh) * | 2012-10-26 | 2013-05-08 | 华为技术有限公司 | 一种排序的方法、装置与终端 |
CN104714838A (zh) * | 2013-12-12 | 2015-06-17 | 中国移动通信集团四川有限公司 | 一种任务调度方法及装置 |
CN107590592A (zh) * | 2017-08-31 | 2018-01-16 | 中国建设银行股份有限公司 | 作业依赖关系表示方法、作业展示和调度控制方法及装置 |
CN109656692A (zh) * | 2017-10-12 | 2019-04-19 | 中兴通讯股份有限公司 | 一种大数据任务管理方法、装置、设备及存储介质 |
CN110298542A (zh) * | 2019-05-23 | 2019-10-01 | 深圳壹账通智能科技有限公司 | 智能排期方法、装置、计算机设备及存储介质 |
-
2019
- 2019-11-15 CN CN201911119818.4A patent/CN110837412B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7170989B1 (en) * | 2002-09-06 | 2007-01-30 | Sprint Communications Company L.P. | Transaction dependency manager |
CN103098056A (zh) * | 2012-10-26 | 2013-05-08 | 华为技术有限公司 | 一种排序的方法、装置与终端 |
CN104714838A (zh) * | 2013-12-12 | 2015-06-17 | 中国移动通信集团四川有限公司 | 一种任务调度方法及装置 |
CN107590592A (zh) * | 2017-08-31 | 2018-01-16 | 中国建设银行股份有限公司 | 作业依赖关系表示方法、作业展示和调度控制方法及装置 |
CN109656692A (zh) * | 2017-10-12 | 2019-04-19 | 中兴通讯股份有限公司 | 一种大数据任务管理方法、装置、设备及存储介质 |
CN110298542A (zh) * | 2019-05-23 | 2019-10-01 | 深圳壹账通智能科技有限公司 | 智能排期方法、装置、计算机设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
AHMED ALSHEIKHY: "An improved dynamic Round Robin scheduling algorithm based on a variant quantum time", 《 2015 11TH INTERNATIONAL COMPUTER ENGINEERING CONFERENCE (ICENCO)》 * |
闫萍: "带准备时间的单机指数时间学习效应排序问题", 《运筹与管理》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114035769A (zh) * | 2021-10-20 | 2022-02-11 | 北京金山云网络技术有限公司 | 作业流控制方法、装置、电子设备及存储介质 |
CN117170889A (zh) * | 2023-11-01 | 2023-12-05 | 沐曦集成电路(上海)有限公司 | 异构非阻塞数据包同步处理系统 |
CN117170889B (zh) * | 2023-11-01 | 2024-01-23 | 沐曦集成电路(上海)有限公司 | 异构非阻塞数据包同步处理系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110837412B (zh) | 2022-08-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9959313B2 (en) | Database management system and method capable of dynamically issuing inputs/outputs and executing operations in parallel | |
US9959229B2 (en) | Associating process priority with I/O queuing | |
US8695005B2 (en) | Model for hosting and invoking applications on virtual machines in a distributed computing environment | |
CN108509556B (zh) | 数据迁移方法和装置、服务器、存储介质 | |
US20150234927A1 (en) | Application search method, apparatus, and terminal | |
US20060294049A1 (en) | Back-off mechanism for search | |
US8607239B2 (en) | Lock mechanism to reduce waiting of threads to access a shared resource by selectively granting access to a thread before an enqueued highest priority thread | |
US20160352822A1 (en) | Command process load balancing system | |
CN110837412B (zh) | 一种作业就绪状态判断方法、装置、设备和存储介质 | |
CN110460653B (zh) | 自动驾驶车辆数据传输的方法及装置 | |
CN113238843A (zh) | 一种任务执行方法、装置、设备及存储介质 | |
CN109101603B (zh) | 一种数据比对方法、装置、设备及存储介质 | |
CN110851276A (zh) | 一种业务请求处理方法、装置、服务器和存储介质 | |
CN107977275B (zh) | 基于消息队列的任务处理方法及相关设备 | |
CN112181645A (zh) | 一种资源调度的方法、装置、设备及存储介质 | |
CN109086097B (zh) | 一种小程序的启动方法、装置、服务器及存储介质 | |
CN110781159A (zh) | Ceph目录文件信息读取方法、装置、服务器及存储介质 | |
CN111090651A (zh) | 数据源的处理方法、装置、设备及可读存储介质 | |
US11036710B2 (en) | Scalable selection management | |
EP3657331B1 (en) | Module assignment management | |
CN111405015B (zh) | 一种数据处理方法、装置、设备及存储介质 | |
CN115129438A (zh) | 任务分布式调度的方法和装置 | |
KR101725408B1 (ko) | 실시간 운영체제의 태스크 스케줄링 방법 | |
CN113407331A (zh) | 一种任务处理的方法、装置及存储介质 | |
CN111858579A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220922 Address after: 25 Financial Street, Xicheng District, Beijing 100033 Patentee after: CHINA CONSTRUCTION BANK Corp. Address before: 25 Financial Street, Xicheng District, Beijing 100033 Patentee before: CHINA CONSTRUCTION BANK Corp. Patentee before: Jianxin Financial Science and Technology Co.,Ltd. |