CN116501499A - 数据跑批方法、装置、电子设备及存储介质 - Google Patents
数据跑批方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN116501499A CN116501499A CN202310555452.5A CN202310555452A CN116501499A CN 116501499 A CN116501499 A CN 116501499A CN 202310555452 A CN202310555452 A CN 202310555452A CN 116501499 A CN116501499 A CN 116501499A
- Authority
- CN
- China
- Prior art keywords
- preset
- running
- task
- batch
- throughput
- 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
- 238000000034 method Methods 0.000 title claims abstract description 81
- 230000006870 function Effects 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 13
- 238000012544 monitoring process Methods 0.000 claims description 11
- 238000013138 pruning Methods 0.000 claims description 9
- 238000012545 processing Methods 0.000 abstract description 10
- 238000004891 communication Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000012549 training Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002146 bilateral effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- 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
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5018—Thread allocation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本申请公开了一种数据跑批方法、装置、电子设备及存储介质,涉及数据处理领域。其中,方法包括:获取每条预设跑批任务的第一任务执行特征信息,第一任务执行特征信息包括资源占用信息、耗时信息;接收参数配置指令;其中,参数配置指令包括执行预设跑批任务的线程数、每个线程的最大允许内存,线程数为多个;响应于参数配置指令,通过预设任务安排方法根据线程数、每个线程的最大允许内存、每条预设跑批任务的第一任务执行特征信息,以及每条预设跑批任务的执行顺序,将所有预设跑批任务安排至线程数个线程;创建线程数个线程,通过线程数个线程执行所有预设跑批任务。采用本公开实施例提供的方法可以提高执行效率保证跑批任务的执行顺序。
Description
技术领域
本公开涉及数据处理领域,尤其涉及一种数据跑批方法、装置、电子设备及存储介质。
背景技术
相关技术中,通常通过简单的串行调度或者并行多线程调度管理内大规模数据跑批任务。但是,串行调度需要消耗大量时间,并行多线程调度会可能会导致跑批任务的执行难以保证跑批任务的顺序。
发明内容
本公开提供一种数据跑批方法、装置、电子设备及存储介质。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种数据跑批方法,包括:
获取每条预设跑批任务的第一任务执行特征信息;其中,所述第一任务执行特征信息包括资源占用信息、耗时信息;
接收参数配置指令;其中,所述参数配置指令包括执行所述预设跑批任务的线程数、每个所述线程的最大允许内存,所述线程数为多个;
响应于所述参数配置指令,通过预设任务安排方法根据所述线程数、每个所述线程的最大允许内存、每条所述预设跑批任务的第一任务执行特征信息,以及每条所述预设跑批任务的执行顺序,将所有所述预设跑批任务安排至所述线程数个所述线程;
创建所述线程数个线程,通过所述线程数个所述线程执行所有所述预设跑批任务。
在一种可能的实施方式中,所述获取每条预设跑批任务的第一任务执行特征信息之前,还包括:
单线程执行每条所述预设跑批任务;
采集每条所述预设跑批任务的任务执行信息;
基于每条所述预设跑批任务的任务执行信息,确定每条所述预设跑批任务的第一任务执行特征信息。
在一种可能的实施方式中,所述预设任务安排方法包括子集树回溯算法和剪枝操作。
在一种可能的实施方式中,所述每条所述预设跑批任务存储于数据库服务器中,所述通过多个所述线程执行所有所述预设跑批任务,包括:
在通过多个所述线程执行所有所述预设跑批任务时,监测跑批服务器和所述数据库服务器的吞吐量;
在监测到所述跑批服务器的吞吐量大于或等于第一预设吞吐量、所述数据库服务器的吞吐量大于或等于第二预设吞吐量中的至少一种的情况下,通过预设缓冲函数调整所述跑批服务器的跑批参数。
在一种可能的实施方式中,在所述预设跑批任务为写入操作的情况下,所述跑批参数包括写入块的大小和缓冲值;
所述在监测到所述跑批服务器的吞吐量大于或等于第一预设吞吐量、所述数据库服务器的吞吐量大于或等于第二预设吞吐量中的至少一种的情况下,通过预设缓冲函数调整所述跑批服务器的跑批参数,包括:
在监测到所述跑批服务器的吞吐量大于或等于第一预设吞吐量的情况下,减小所述跑批服务器中写入块的大小;
在监测到所述数据库服务器的吞吐量大于或等于第二预设吞吐量的情况下,增加所述跑批服务器中写入块的大小;
在监测到所述跑批服务器的吞吐量大于或等于第一预设吞吐量,且所述数据库服务器的吞吐量大于或等于第二预设吞吐量的情况下,调整所述跑批服务器的缓冲值。
在一种可能的实施方式中,所述通过多个所述线程执行所有所述预设跑批任务之后,还包括:
采集每条所述预设跑批任务的第二任务执行特征信息;
基于所述第二任务执行特征信息调整所述第一任务执行特征信息。
根据本公开实施例的第二方面,提供一种数据跑批装置,包括:
信息获取模块,用于获取每条预设跑批任务的第一任务执行特征信息;其中,所述第一任务执行特征信息包括资源占用信息、耗时信息;
指令接收模块,用于接收参数配置指令;其中,所述参数配置指令包括执行所述预设跑批任务的线程数、每个所述线程的最大允许内存,所述线程数为多个;
任务分配模块,用于响应于所述参数配置指令,通过预设任务安排方法根据所述线程数、每个所述线程的最大允许内存、每条所述预设跑批任务的第一任务执行特征信息,以及每条所述预设跑批任务的执行顺序,将所有所述预设跑批任务安排至所述线程数个所述线程;
任务跑批模块,用于创建所述线程数个线程,通过所述线程数个所述线程执行所有所述预设跑批任务。
在一种可能的实施方式中,还包括:
单线程跑批模块,用于单线程执行每条所述预设跑批任务;
第一信息采集模块,用于采集每条所述预设跑批任务的任务执行信息;
信息确定模块,用于基于每条所述预设跑批任务的任务执行信息,确定每条所述预设跑批任务的第一任务执行特征信息。
在一种可能的实施方式中,所述预设任务安排方法包括子集树回溯算法和剪枝操作。
在一种可能的实施方式中,所述每条所述预设跑批任务存储于数据库服务器中,所述任务跑批模块,包括:
监测模块,用于在通过多个所述线程执行所有所述预设跑批任务时,监测跑批服务器和所述数据库服务器的吞吐量;
参数调整模块,用于在监测到所述跑批服务器的吞吐量大于或等于第一预设吞吐量、所述数据库服务器的吞吐量大于或等于第二预设吞吐量中的至少一种的情况下,通过预设缓冲函数调整所述跑批服务器的跑批参数。
在一种可能的实施方式中,在所述预设跑批任务为写入操作的情况下,所述跑批参数包括写入块的大小和缓冲值;
所述参数调整模块,包括:
第一调整单元,用于在监测到所述跑批服务器的吞吐量大于或等于第一预设吞吐量的情况下,减小所述跑批服务器中写入块的大小;
第二调整单元,用于在监测到所述数据库服务器的吞吐量大于或等于第二预设吞吐量的情况下,增加所述跑批服务器中写入块的大小;
第三调整单元,用于在监测到所述跑批服务器的吞吐量大于或等于第一预设吞吐量,且所述数据库服务器的吞吐量大于或等于第二预设吞吐量的情况下,调整所述跑批服务器的缓冲值。
在一种可能的实施方式中,还包括:
第二信息采集模块,用于采集每条所述预设跑批任务的第二任务执行特征信息;
信息调整模块,用于基于所述第二任务执行特征信息调整所述第一任务执行特征信息。
根据本公开实施例的第三方面,提供一种电子设备,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如第一方面中任一项所述的数据跑批方法。
根据本公开实施例的第四方面,提供一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如第一方面中任一项所述的数据跑批方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如第一方面中任一项所述的数据跑批方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
在本公开实施例中,通过获取每条预设跑批任务的第一任务执行特征信息;其中,第一任务执行特征信息包括资源占用信息、耗时信息;接收参数配置指令;其中,参数配置指令包括执行预设跑批任务的线程数、每个线程的最大允许内存,线程数为多个;响应于参数配置指令,通过预设任务安排方法根据线程数、每个线程的最大允许内存、每条预设跑批任务的第一任务执行特征信息,以及每条预设跑批任务的执行顺序,将所有预设跑批任务安排至线程数个线程;创建线程数个线程,通过线程数个线程执行所有预设跑批任务。这样,可以在各跑批任务的资源占用信息、耗时信息等性能的基础上,结合各跑批任务的执行顺序,进行跑批任务至各线程的安排分配。如此,可以在符合业务要求的情况下,更加安全、快速的完成所有跑批任务的跑批,从而不仅可以避免相关技术中串行调度时间过长的问题,还可以避免并行多线程调度无法保证跑批任务执行顺序的问题,进而不仅可以减少任务的总执行时间,提高执行效率,还可以保证跑批任务的执行顺序。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种数据跑批方法的流程图。
图2是根据一示例性实施例示出的一种数据跑批方法的流程图。
图3是根据一示例性实施例示出的一种跑批参数调整示意图。
图4是根据一示例性实施例示出的一种数据跑批装置的框图。
图5是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
本申请技术方案中对数据的获取、存储、使用、处理等均符合国家法律法规的相关规定。
下面结合附图对本公开实施例提供的数据跑批方法、装置、电子设备及存储介质进行详细说明。
图1是根据一示例性实施例示出的一种数据跑批方法的流程图,该数据跑批方法可以应用于服务器,例如,可以为跑批服务器,跑批服务器例如可以是服务器集群或单台服务器。如图1所示,数据跑批方法可以包括以下步骤。
S101,获取每条预设跑批任务的第一任务执行特征信息。
其中,第一任务执行特征信息包括资源占用信息、耗时信息。
在本公开实施例中,在执行数据跑批方法时,可以先获取每条预设跑批任务的任务执行特征信息,也即获取每条预设跑批任务的资源占用信息、耗时信息。示例性的。预设跑批任务可以是预先设置好的跑批任务,预设跑批任务可以是多条;资源占用信息可以用于指示跑批任务执行时需要占用的内存资源大小,耗时信息可以用于指示跑批任务执行时需要耗费的时长。以预设跑批任务为9条,且分别为预设跑批任务1、预设跑批任务2、……、预设跑批任务8、预设跑批任务9为例,获取每条预设跑批任务的第一任务执行特征信息可以为:分别获取预设跑批任务1的资源占用信息1和耗时信息1、预设跑批任务2的资源占用信息2和耗时信息2、……、预设跑批任务8的资源占用信息1和耗时信息8、预设跑批任务9的资源占用信息1和耗时信息9。
S102,接收参数配置指令。
其中,参数配置指令包括执行跑批任务的线程数、每个线程的最大允许内存,线程数为多个。
在本公开实施例中,在获取每条预设跑批任务的第一任务执行特征信息之后,还可以接收参数配置指令。示例性的,参数配置指令可以由用户输入,参数配置指令可以用于指示创建线程的线程数,以及指示每个线程的最大允许内存。可以理解的,线程数和每个线程的最大允许内存可以由用户根据实际需求自行设置。
S103,响应于参数配置指令,通过预设任务安排方法根据线程数、每个线程的最大允许内存、每条预设跑批任务的第一任务执行特征信息,以及每条预设跑批任务的执行顺序,将所有预设跑批任务安排至线程数个线程。
在本公开实施例中,在接收参数配置指令之后,响应于参数配置指令,可以通过预设任务安排方法根据线程数、每个线程的最大允许内存、每条预设跑批任务的第一任务执行特征信息(即资源占用信息和耗时信息)、每条预设跑批任务的执行顺序,对所有预设跑批任务进行安排,将所有预设跑批任务分别安排至参数配置指令指示的线程数个线程中。可以理解的,线程数可以为多个,例如、3、4、5等,每个线程中可以安排一个或多个预设跑批任务;预设任务安排方法可以是预先设置的用于安排预设跑批任务至线程的方法。示例性的,以线程数为3,预设跑批任务为9个为例,可以根据线程数、每个线程的最大允许内存、每条预设跑批任务的第一任务执行特征信息,以及每条预设跑批任务的执行顺序,将所有预设跑批任务安排至线程数个线程,例如可以将预设跑批任务1、预设跑批任务3、预设跑批任务4安排至线程1执行,将预设跑批任务2、预设跑批任务7、预设跑批任务9安排至线程2执行,预设跑批任务5、预设跑批任务6、预设跑批任务8安排至线程3执行。可以理解的,每个线程中安排执行的预设跑批任务的数量可以相同也可以不同。
在一些可能得实施方式中,预设任务安排方法可以包括子集树回溯算法和剪枝操作。
在本公开实施例中,可以根据深度优先算法中的子集树回归算法和剪枝操作实现跑批最短时间的任务安排。考虑到影响预设跑批任务安排的因素主要有预设跑批任务的执行顺序、耗时信息以及资源占用信息等指标。其中,任务执行顺序主要是根据预设跑批任务的数据依赖先后顺序来安排预设跑批任务至各个线程,以实现在指定的线程数下安全稳定有效的最快完成所有预设跑批任务。也即可以在预设跑批任务的调度过程中加入资源占用信息的实时判断,根据内存空闲空间(例如java的内存空闲空间)等指标安排合适的预设跑批任务。可以理解的,子集树回溯算法和剪枝操作的具体实现与相关技术类似,在此再赘述。
S104,创建线程数个线程,通过线程数个线程执行所有预设跑批任务。
在本公开实施例中,在通过预设任务安排方法根据线程数、每个线程的最大允许内存、每条跑批任务的第一任务执行特征信息,以及每个跑批任务的执行顺序,将所有跑批任务安排至线程数个线程之后,可以创建线程数个线程,并按照上述步骤S103的跑批任务安排结果将预设跑批任务安排至对应的线程,通过创建的线程数个线程执行所有预设跑批任务。示例性的,仍以将预设跑批任务1、预设跑批任务3、预设跑批任务4安排至线程1执行,将预设跑批任务2、预设跑批任务7、预设跑批任务9安排至线程2执行,预设跑批任务5、预设跑批任务6、预设跑批任务8安排至线程3执行为例,则可以通过线程1执行预设跑批任务1、预设跑批任务3、预设跑批任务4,通过线程2执行预设跑批任务2、预设跑批任务7、预设跑批任务9,通过线程3执行预设跑批任务5、预设跑批任务6、预设跑批任务8。
在本公开实施例中,通过获取每条预设跑批任务的第一任务执行特征信息;其中,第一任务执行特征信息包括资源占用信息、耗时信息;接收参数配置指令;其中,参数配置指令包括执行预设跑批任务的线程数、每个线程的最大允许内存,线程数为多个;响应于参数配置指令,通过预设任务安排方法根据线程数、每个线程的最大允许内存、每条预设跑批任务的第一任务执行特征信息,以及每条预设跑批任务的执行顺序,将所有预设跑批任务安排至线程数个线程;创建线程数个线程,通过线程数个线程执行所有预设跑批任务。这样,可以在各跑批任务的资源占用信息、耗时信息等性能的基础上,结合各跑批任务的执行顺序,进行跑批任务至各线程的安排分配。如此,可以在符合业务要求的情况下,更加安全、快速的完成所有跑批任务的跑批,从而不仅可以避免相关技术中串行调度时间过长的问题,还可以避免并行多线程调度无法保证跑批任务执行顺序的问题,进而不仅可以减少任务的总执行时间,提高执行效率,还可以保证跑批任务的执行顺序。
在一种可能的实施方式中,在上述步骤获取每条预设跑批任务的第一任务执行特征信息之前,还可以执行如下处理:
单线程执行每条预设跑批任务;
采集每条预设跑批任务的任务执行信息;
基于每条预设跑批任务的任务执行信息,确定每条预设跑批任务的第一任务执行特征信息。
在本公开实施例中,可以预先执行每个预设跑批任务,以得到每个预设跑批任务的第一任务执行特征信息,即资源占用信息、耗时信息。示例性的,可以单线程执行每条预设跑批任务,并进行预设跑批任务执行信息的采集,得到各个预设跑批任务的特征库,再对各个预设跑批任务的特征库进行数据训练分析,初步预测出各任务的资源使用情况分析(即资源占用信息)与执行时间(耗时信息)。可以理解的,本实施例预先确定每条预设跑批任务的第一任务执行特征信息的过程可以仅预先执行一次,也可以在每次执行数据跑批方法前均执行。这样,可以预先确定每条预设跑批任务的资源占用信息、耗时信息,为后续的数据跑批任务至线程的安排提供数据依据。
在一种可能的实施方式中,每条预设跑批任务可以存储于数据库服务器中,相应的,上述步骤通过多个线程执行所有预设跑批任务的具体实现方式可以为:
在通过多个线程执行所有预设跑批任务时,监测跑批服务器和数据库服务器的吞吐量;
在监测到跑批服务器的吞吐量大于或等于第一预设吞吐量、数据库服务器的吞吐量大于或等于第二预设吞吐量中的至少一种的情况下,通过预设缓冲函数调整跑批服务器的跑批参数。
在本公开实施例中,每条预设跑批任务可以存储于数据库服务器中,跑批服务器可以是用于执行预设跑批任务的服务器,跑批服务器在执行预设跑批任务时,可以从数据库服务器中获取需要执行的预设跑批任务的数据。在通过多个线程执行所有预设跑批任务时,可以监测跑批服务器和数据库服务器的吞吐量。如果监测到跑批服务器的吞吐量大于或等于跑批服务器设置的最大允许吞吐量,即第一预设吞吐量;或者,监测到数据库服务器的吞吐量大于或等于数据库服务器设置的最大允许吞吐量,即第二预设吞吐量;或者,即监测到跑批服务器的吞吐量大于或等于第一预设吞吐量,也监测到数据库服务器的吞吐量大于或等于第二预设吞吐量。此时,则可以通过预先设置的缓冲函数调整跑批服务器的跑批参数,以均衡跑批服务器和数据库服务器的吞吐量。其中,预设缓冲函数可以是预先设置在跑批服务器中,用于实现跑批服务器的跑批参数调节的函数。如此,跑批服务器跑批参数的调整,可以避免出现跑批服务器和数据库服务器的吞吐量过大的情况,从而可以实现跑批服务器和数据库服务器间的压力调节,进一步保证预设跑批任务的顺利执行。
在一种可能的实施方式中,在预设跑批任务为写入操作的情况下,跑批参数可以包括写入块的大小和缓冲值。
此时,上述步骤中在监测到跑批服务器的吞吐量大于或等于第一预设吞吐量、数据库服务器的吞吐量大于或等于第二预设吞吐量中的至少一种的情况下,通过预设缓冲函数调整跑批服务器的缓冲值的具体实现方式可以为:
在监测到跑批服务器的吞吐量大于或等于第一预设吞吐量的情况下,减小跑批服务器中写入块的大小;
在监测到数据库服务器的吞吐量大于或等于第二预设吞吐量的情况下,增加跑批服务器中写入块的大小;
在监测到跑批服务器的吞吐量大于或等于第一预设吞吐量,且数据库服务器的吞吐量大于或等于第二预设吞吐量的情况下,调整跑批服务器的缓冲值。
在本公开实施例中,如果预设跑批任务为写入操作,则相应的跑批参数可以包括写入块的大小和缓冲值。考虑到写入块越大对跑批服务器的内存压力越大,写入块越小对跑批服务器的内存压力越小;对数据库服务器操作次数越少,对数据库服务器的压力越小;对数据库服务器操作次数越多,对数据库服务器的压力越大。故而,示例性的,如果监测到跑批服务器的吞吐量大于或等于第一预设吞吐量,则说明跑批服务器的压力较大,可以减小跑批服务器中写入块的大小;反之,如果监测到数据库服务器的吞吐量大于或等于第二预设吞吐量,则说明数据库服务器的压力较大,可以增加跑批服务器中写入块的大小;如果既监测到跑批服务器的吞吐量大于或等于第一预设吞吐量,且监测到数据库服务器的吞吐量大于或等于第二预设吞吐量,则可以调整跑批服务器的缓冲值,例如可以触发缓冲值模块,调整跑批服务器中缓冲值的大小,以在java层面控制数据库服务器的写入频率,达到临时的应急措施。这样,通过对写入块和缓冲值的调整,即对程序中的缓冲函数进行反馈调节,可以平衡跑批服务器与数据库服务器之间的压力,以达到保证跑批任务正确执行的效果。如此,即可以进一步解决了串行执行时间过长的问题,又可以进一步解决了并行对任务执行缺乏保障的问题,即减少了任务的总执行时间,又保证了跑批的顺序与安全。
在一些可能得实施方式中,本公开实施例提供的方法中,在通过多个线程执行所有预设跑批任务之后,还包括:
采集每条预设跑批任务的第二任务执行特征信息;
基于第二任务执行特征信息调整第一任务执行特征信息。
在本公开实施例中,还可以基于跑批结束后每条预设跑批任务的任务执行特征信息,即第二任务执行特征信息对第一任务执行特征信息进行调整,也即可以基于每条预设跑批任务的跑批结束后的资源占用信息和耗时信息,调整预先得到的每条预设跑批任务的跑批结束后的资源占用信息和耗时信息。示例性的,在通过多个线程执行所有预设跑批任务之后之后,可以每条预设跑批任务的第二任务执行特征信息,即资源占用信息和耗时信息,再基于每条预设跑批任务的资源占用信息和耗时信息调整第一任务执行特征信息。示例性的,可以将第二任务执行特征信息写入特征库为数据预测(也即为后续的资源占用信息和耗时信息的预测)继续提供数据支持。基于第二任务执行特征信息调整第一任务执行特征信息,例如可以将第一任务执行特征信息更新为第二任务执行特征信息,或者也可以采取其他方法调整第一任务执行特征信息。如此,可以提高更新后的第一任务执行特性信息的准确性,为后续的任务安排提供更准确的数据依据。
为使本公开实施例提供的数据跑批方法更清楚,下面结合图2和图3对本公开实施例提供的数据跑批方法进行说明。
图2以线程数为3,每个线程中各有2个跑批任务为例示出了一种数据跑批方法的流程图。参照图2,数据跑批方法可以包括如下几个阶段:
数据准备阶段:单线程执行每条预设跑批任务,进行初始任务执行信息采集形成各个预设跑批任务的特征库,并对特征库中的数据训练分析初步预测出各任务的耗时信息与资源占用信息,即第一任务执行特性信息。在本阶段中,可以通过代码插桩技术,通过Runtime(内存管理)对象获取各跑批任务前、中、后的跑批服务器资源占用情况(例如最大内存、可用内存、空闲空间等),并形成各任务的资源占用信息特征库;通过插入记录时间的代码记录每条预设跑批任务的执行耗时形成耗时信息特征库,在留存足够数据后根据卷积神经网络(CNN)进行训练以实现各跑批任务的耗时信息、资源占用信息的预测。
配置阶段:用户输入参数配置指令,配置最大线程数,以及每个线程的最大安全内存分配(即每个线程的最大允许内存)等参数。
任务安排阶段:根据深度优先算法中的子集树回溯算法和剪枝操作,实现最短时间的任务安排。影响任务安排的主要有每条预设跑批任务的执行顺序、资源占用信息、耗时信息等指标。任务安排主要是根据任务的数据依赖先后顺序来安排每条预设跑批任务至各个线程,以实现在指定的线程数下安全稳定有效的最快完成所有预设跑批任务。在跑批任务的调度过程中加入资源的实时判断,根据java的内存空闲空间等指标安排合适的预设跑批任务。
跑批阶段:在任务安排后,自动按照配置阶段用户的参数配置指令创建对应数量的线程安排预设跑批任务的执行。在预设跑批任务的执行过程中,由缓冲函数主要控制跑批内部各参数的反馈调节。预设跑批任务执行的同时会有监控模块实时监控数据库服务器(例如MYSQL服务器)及跑批服务器的性能指标(参见图3)。当跑批过程中发生预测以外的突发情况时,监控线程会反馈这种问题并调节代码中嵌入的缓冲函数的参数,即做降低数据库操作间隔、改变写入块大小等缓冲举措。以写入操作为例,设置写入块,将所有写入需求分块操作。写入块越大对跑批服务器内存压力越大,即a越大,对数据库服务器操作次数越小,即d越小。写入块越小对跑批服务器内存压力越小,即a越小;对数据库服务器操作次数越多,即d越大。当跑批服务器内存压力较大时,可以减小写入块的大小以降低对象的内存占用,将一部分压力分给数据库服务器;当数据库服务器压力较大时,增加写入块的大小以降低数据库服务器的写入次数,将压力分担给跑批服务器。本模块功能主要为根据当前a与d的大小自动调整写入块的大小,以实现数据库服务器与跑批服务器之间压力的动态平衡。如果双边服务器的资源占用都已经达到预设的最大值,则触发缓冲值模块,调整跑批服务器中缓冲值的大小,以在java层面控制数据库写入频率达到临时的应急措施。
调整阶段:跑批执行完毕后,可以将相关信息(即本次跑批任务执行相关信息)写入特征库为数据预测继续提供数据支持,调整训练结果,也即基于第二任务执行特征信息调整第一任务执行特征信息。
本实施例的具体实现方法和技术效果与上述方法实施例类似,在此不再赘述。
基于相同的发明构思,本公开的实施例还提供了一种数据跑批装置,如图4所示,图4是根据一示例性实施例示出的一种数据跑批装置的框图。参照图4,该数据跑批装置400可以包括:
信息获取模块410,用于获取每条预设跑批任务的第一任务执行特征信息;其中,所述第一任务执行特征信息包括资源占用信息、耗时信息;
指令接收模块420,用于接收参数配置指令;其中,所述参数配置指令包括执行所述预设跑批任务的线程数、每个所述线程的最大允许内存,所述线程数为多个;
任务分配模块430,用于响应于所述参数配置指令,通过预设任务安排方法根据所述线程数、每个所述线程的最大允许内存、每条所述预设跑批任务的第一任务执行特征信息,以及每条所述预设跑批任务的执行顺序,将所有所述预设跑批任务安排至所述线程数个所述线程;
任务跑批模块440,用于创建所述线程数个线程,通过所述线程数个所述线程执行所有所述预设跑批任务。
在一种可能的实施方式中,还包括:
单线程跑批模块,用于单线程执行每条所述预设跑批任务;
第一信息采集模块,用于采集每条所述预设跑批任务的任务执行信息;
信息确定模块,用于基于每条所述预设跑批任务的任务执行信息,确定每条所述预设跑批任务的第一任务执行特征信息。
在一种可能的实施方式中,所述预设任务安排方法包括子集树回溯算法和剪枝操作。
在一种可能的实施方式中,所述每条所述预设跑批任务存储于数据库服务器中,所述任务跑批模块440,包括:
监测模块,用于在通过多个所述线程执行所有所述预设跑批任务时,监测跑批服务器和所述数据库服务器的吞吐量;
参数调整模块,用于在监测到所述跑批服务器的吞吐量大于或等于第一预设吞吐量、所述数据库服务器的吞吐量大于或等于第二预设吞吐量中的至少一种的情况下,通过预设缓冲函数调整所述跑批服务器的跑批参数。
在一种可能的实施方式中,在所述预设跑批任务为写入操作的情况下,所述跑批参数包括写入块的大小和缓冲值;
所述参数调整模块,包括:
第一调整单元,用于在监测到所述跑批服务器的吞吐量大于或等于第一预设吞吐量的情况下,减小所述跑批服务器中写入块的大小;
第二调整单元,用于在监测到所述数据库服务器的吞吐量大于或等于第二预设吞吐量的情况下,增加所述跑批服务器中写入块的大小;
第三调整单元,用于在监测到所述跑批服务器的吞吐量大于或等于第一预设吞吐量,且所述数据库服务器的吞吐量大于或等于第二预设吞吐量的情况下,调整所述跑批服务器的缓冲值。
在一种可能的实施方式中,还包括:
第二信息采集模块,用于采集每条所述预设跑批任务的第二任务执行特征信息;
信息调整模块,用于基于所述第二任务执行特征信息调整所述第一任务执行特征信息。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
根据本公开的实施例,本公开还提供了一种电子设备、一种存储介质和一种计算机程序产品。
图5示出了可以用来实施本公开的实施例的示例电子设备500的示意性框图。电子设备500旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图5所示,电子设备500包括计算单元501,其可以根据存储在只读存储器(ROM)502中的计算机程序或者从存储单元508加载到随机访问存储器(RAM)503中的计算机程序,来执行各种适当的动作和处理。在RAM503中,还可存储设备500操作所需的各种程序和数据。计算单元501、ROM502以及RAM 503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
电子设备500中的多个部件连接至I/O接口505,包括:输入单元506,例如键盘、鼠标等;输出单元507,例如各种类型的显示器、扬声器等;存储单元508,例如磁盘、光盘等;以及通信单元509,例如网卡、调制解调器、无线通信收发机等。通信单元509允许电子设备500通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元501可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元501的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元501执行上文所描述的各个方法和处理,例如数据跑批方法。例如,在一些实施例中,数据跑批方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元508。在一些实施例中,计算机程序的部分或者全部可以经由ROM 502和/或通信单元509而被载入和/或安装到电子设备500上。当计算机程序加载到RAM 503并由计算单元501执行时,可以执行上文描述的数据跑批方法的一个或多个步骤。备选地,在其他实施例中,计算单元501可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行数据跑批方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的计算机程序产品的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。存储介质可以是机器可读信号介质或机器可读储存介质。存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、互联网和区块链网络。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务("Virtual Private Server",或简称 "VPS")中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (15)
1.一种数据跑批方法,其特征在于,包括:
获取每条预设跑批任务的第一任务执行特征信息;其中,所述第一任务执行特征信息包括资源占用信息、耗时信息;
接收参数配置指令;其中,所述参数配置指令包括执行所述预设跑批任务的线程数、每个所述线程的最大允许内存,所述线程数为多个;
响应于所述参数配置指令,通过预设任务安排方法根据所述线程数、每个所述线程的最大允许内存、每条所述预设跑批任务的第一任务执行特征信息,以及每条所述预设跑批任务的执行顺序,将所有所述预设跑批任务安排至所述线程数个所述线程;
创建所述线程数个线程,通过所述线程数个所述线程执行所有所述预设跑批任务。
2.根据权利要求1所述的数据跑批方法,其特征在于,所述获取每条预设跑批任务的第一任务执行特征信息之前,还包括:
单线程执行每条所述预设跑批任务;
采集每条所述预设跑批任务的任务执行信息;
基于每条所述预设跑批任务的任务执行信息,确定每条所述预设跑批任务的第一任务执行特征信息。
3.根据权利要求1所述的数据跑批方法,其特征在于,所述预设任务安排方法包括子集树回溯算法和剪枝操作。
4.根据权利要求1所述的数据跑批方法,其特征在于,所述每条所述预设跑批任务存储于数据库服务器中,所述通过多个所述线程执行所有所述预设跑批任务,包括:
在通过多个所述线程执行所有所述预设跑批任务时,监测跑批服务器和所述数据库服务器的吞吐量;
在监测到所述跑批服务器的吞吐量大于或等于第一预设吞吐量、所述数据库服务器的吞吐量大于或等于第二预设吞吐量中的至少一种的情况下,通过预设缓冲函数调整所述跑批服务器的跑批参数。
5.根据权利要求4所述的数据跑批方法,其特征在于,在所述预设跑批任务为写入操作的情况下,所述跑批参数包括写入块的大小和缓冲值;
所述在监测到所述跑批服务器的吞吐量大于或等于第一预设吞吐量、所述数据库服务器的吞吐量大于或等于第二预设吞吐量中的至少一种的情况下,通过预设缓冲函数调整所述跑批服务器的跑批参数,包括:
在监测到所述跑批服务器的吞吐量大于或等于第一预设吞吐量的情况下,减小所述跑批服务器中写入块的大小;
在监测到所述数据库服务器的吞吐量大于或等于第二预设吞吐量的情况下,增加所述跑批服务器中写入块的大小;
在监测到所述跑批服务器的吞吐量大于或等于第一预设吞吐量,且所述数据库服务器的吞吐量大于或等于第二预设吞吐量的情况下,调整所述跑批服务器的缓冲值。
6.根据权利要求1所述的数据跑批方法,其特征在于,所述通过多个所述线程执行所有所述预设跑批任务之后,还包括:
采集每条所述预设跑批任务的第二任务执行特征信息;
基于所述第二任务执行特征信息调整所述第一任务执行特征信息。
7.一种数据跑批装置,其特征在于,包括:
信息获取模块,用于获取每条预设跑批任务的第一任务执行特征信息;其中,所述第一任务执行特征信息包括资源占用信息、耗时信息;
指令接收模块,用于接收参数配置指令;其中,所述参数配置指令包括执行所述预设跑批任务的线程数、每个所述线程的最大允许内存,所述线程数为多个;
任务分配模块,用于响应于所述参数配置指令,通过预设任务安排方法根据所述线程数、每个所述线程的最大允许内存、每条所述预设跑批任务的第一任务执行特征信息,以及每条所述预设跑批任务的执行顺序,将所有所述预设跑批任务安排至所述线程数个所述线程;
任务跑批模块,用于创建所述线程数个线程,通过所述线程数个所述线程执行所有所述预设跑批任务。
8.根据权利要求7所述的数据跑批装置,其特征在于,还包括:
单线程跑批模块,用于单线程执行每条所述预设跑批任务;
第一信息采集模块,用于采集每条所述预设跑批任务的任务执行信息;
信息确定模块,用于基于每条所述预设跑批任务的任务执行信息,确定每条所述预设跑批任务的第一任务执行特征信息。
9.根据权利要求7所述的数据跑批装置,其特征在于,所述预设任务安排方法包括子集树回溯算法和剪枝操作。
10.根据权利要求7所述的数据跑批装置,其特征在于,所述每条所述预设跑批任务存储于数据库服务器中,所述任务跑批模块,包括:
监测模块,用于在通过多个所述线程执行所有所述预设跑批任务时,监测跑批服务器和所述数据库服务器的吞吐量;
参数调整模块,用于在监测到所述跑批服务器的吞吐量大于或等于第一预设吞吐量、所述数据库服务器的吞吐量大于或等于第二预设吞吐量中的至少一种的情况下,通过预设缓冲函数调整所述跑批服务器的跑批参数。
11.根据权利要求10所述的数据跑批装置,其特征在于,在所述预设跑批任务为写入操作的情况下,所述跑批参数包括写入块的大小和缓冲值;
所述参数调整模块,包括:
第一调整单元,用于在监测到所述跑批服务器的吞吐量大于或等于第一预设吞吐量的情况下,减小所述跑批服务器中写入块的大小;
第二调整单元,用于在监测到所述数据库服务器的吞吐量大于或等于第二预设吞吐量的情况下,增加所述跑批服务器中写入块的大小;
第三调整单元,用于在监测到所述跑批服务器的吞吐量大于或等于第一预设吞吐量,且所述数据库服务器的吞吐量大于或等于第二预设吞吐量的情况下,调整所述跑批服务器的缓冲值。
12.根据权利要求7所述的数据跑批装置,其特征在于,还包括:
第二信息采集模块,用于采集每条所述预设跑批任务的第二任务执行特征信息;
信息调整模块,用于基于所述第二任务执行特征信息调整所述第一任务执行特征信息。
13.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至6中任一项所述的数据跑批方法。
14.一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如权利要求1至6中任一项所述的数据跑批方法。
15.一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的数据跑批方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310555452.5A CN116501499B (zh) | 2023-05-17 | 2023-05-17 | 数据跑批方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310555452.5A CN116501499B (zh) | 2023-05-17 | 2023-05-17 | 数据跑批方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116501499A true CN116501499A (zh) | 2023-07-28 |
CN116501499B CN116501499B (zh) | 2023-09-19 |
Family
ID=87318233
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310555452.5A Active CN116501499B (zh) | 2023-05-17 | 2023-05-17 | 数据跑批方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116501499B (zh) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100162245A1 (en) * | 2008-12-19 | 2010-06-24 | Microsoft Corporation | Runtime task with inherited dependencies for batch processing |
US20110252426A1 (en) * | 2010-04-08 | 2011-10-13 | International Business Machines Corporation | Processing batch transactions |
CN104615413A (zh) * | 2015-02-13 | 2015-05-13 | 赛诺威盛科技(北京)有限公司 | 一种流水线任务自适应并行方法 |
US9594599B1 (en) * | 2009-10-14 | 2017-03-14 | Nvidia Corporation | Method and system for distributing work batches to processing units based on a number of enabled streaming multiprocessors |
CN107515795A (zh) * | 2017-09-08 | 2017-12-26 | 北京京东尚科信息技术有限公司 | 基于队列的多任务并行数据处理方法、装置、介质和设备 |
CN110362401A (zh) * | 2019-06-20 | 2019-10-22 | 深圳壹账通智能科技有限公司 | 数据跑批方法、装置、存储介质及集群中的成员主机 |
CN110888917A (zh) * | 2019-11-21 | 2020-03-17 | 深圳乐信软件技术有限公司 | 一种跑批任务执行方法、装置、服务器和存储介质 |
CN111858055A (zh) * | 2020-07-23 | 2020-10-30 | 平安普惠企业管理有限公司 | 任务处理方法、服务器及存储介质 |
CN114138489A (zh) * | 2021-12-03 | 2022-03-04 | 中国建设银行股份有限公司 | 集群式多线程自动记账批处理方法、装置及系统 |
US20220188148A1 (en) * | 2020-12-15 | 2022-06-16 | International Business Machines Corporation | Optimization for scheduling of batch jobs |
US20220413906A1 (en) * | 2021-06-24 | 2022-12-29 | EMC IP Holding Company LLC | Method, device, and program product for managing multiple computing tasks based on batch |
-
2023
- 2023-05-17 CN CN202310555452.5A patent/CN116501499B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100162245A1 (en) * | 2008-12-19 | 2010-06-24 | Microsoft Corporation | Runtime task with inherited dependencies for batch processing |
US9594599B1 (en) * | 2009-10-14 | 2017-03-14 | Nvidia Corporation | Method and system for distributing work batches to processing units based on a number of enabled streaming multiprocessors |
US20110252426A1 (en) * | 2010-04-08 | 2011-10-13 | International Business Machines Corporation | Processing batch transactions |
CN104615413A (zh) * | 2015-02-13 | 2015-05-13 | 赛诺威盛科技(北京)有限公司 | 一种流水线任务自适应并行方法 |
CN107515795A (zh) * | 2017-09-08 | 2017-12-26 | 北京京东尚科信息技术有限公司 | 基于队列的多任务并行数据处理方法、装置、介质和设备 |
CN110362401A (zh) * | 2019-06-20 | 2019-10-22 | 深圳壹账通智能科技有限公司 | 数据跑批方法、装置、存储介质及集群中的成员主机 |
CN110888917A (zh) * | 2019-11-21 | 2020-03-17 | 深圳乐信软件技术有限公司 | 一种跑批任务执行方法、装置、服务器和存储介质 |
CN111858055A (zh) * | 2020-07-23 | 2020-10-30 | 平安普惠企业管理有限公司 | 任务处理方法、服务器及存储介质 |
US20220188148A1 (en) * | 2020-12-15 | 2022-06-16 | International Business Machines Corporation | Optimization for scheduling of batch jobs |
US20220413906A1 (en) * | 2021-06-24 | 2022-12-29 | EMC IP Holding Company LLC | Method, device, and program product for managing multiple computing tasks based on batch |
CN114138489A (zh) * | 2021-12-03 | 2022-03-04 | 中国建设银行股份有限公司 | 集群式多线程自动记账批处理方法、装置及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN116501499B (zh) | 2023-09-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109710624B (zh) | 数据处理方法、装置、介质及电子设备 | |
CN112506619A (zh) | 作业处理方法、装置、电子设备、存储介质和程序产品 | |
CN112052082A (zh) | 任务属性优化方法、装置、服务器及存储介质 | |
CN115640107A (zh) | 运行维护方法、装置、设备及介质 | |
US20230325235A1 (en) | Training task queuing cause analysis method and system, device and medium | |
CN114968567A (zh) | 用于分配计算节点的计算资源的方法、装置和介质 | |
CN114327894A (zh) | 资源分配方法、装置、电子设备及存储介质 | |
CN116501499B (zh) | 数据跑批方法、装置、电子设备及存储介质 | |
CN115658311A (zh) | 一种资源的调度方法、装置、设备和介质 | |
CN115438007A (zh) | 一种文件合并方法、装置、电子设备及介质 | |
CN116594563A (zh) | 分布式存储扩容方法、装置、电子设备和存储介质 | |
CN114185661A (zh) | 一种任务处理方法、装置、设备以及存储介质 | |
CN115952054A (zh) | 一种仿真任务资源管理方法、装置、设备及介质 | |
CN115509931A (zh) | 基于系统的性能测试方法、装置、电子设备及存储介质 | |
CN115994029A (zh) | 容器资源调度方法及装置 | |
CN115495151A (zh) | 规则引擎的迁移方法、装置、设备、存储介质及程序产品 | |
CN115438056A (zh) | 一种数据获取方法、装置、设备以及存储介质 | |
CN114064403A (zh) | 一种任务延迟分析处理方法和装置 | |
CN114862223A (zh) | 一种机器人调度方法、装置、设备及存储介质 | |
CN114520773A (zh) | 一种服务请求的响应方法、装置、服务器及存储介质 | |
CN114707957A (zh) | 业务流程的控制方法、装置、电子设备和存储介质 | |
CN114077481A (zh) | 任务调度方法、装置、设备和存储介质 | |
CN114816758B (zh) | 资源分配方法和装置 | |
CN116450120B (zh) | 实时操作系统内核分析方法、装置、设备及介质 | |
CN116962532A (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 |