CN113742052A - 批量任务处理方法和装置 - Google Patents

批量任务处理方法和装置 Download PDF

Info

Publication number
CN113742052A
CN113742052A CN202010474096.0A CN202010474096A CN113742052A CN 113742052 A CN113742052 A CN 113742052A CN 202010474096 A CN202010474096 A CN 202010474096A CN 113742052 A CN113742052 A CN 113742052A
Authority
CN
China
Prior art keywords
task
utilization rate
decision tree
processing
amount
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
Application number
CN202010474096.0A
Other languages
English (en)
Other versions
CN113742052B (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.)
Beijing Jingdong Zhenshi Information Technology Co Ltd
Original Assignee
Beijing Jingdong Zhenshi 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 Beijing Jingdong Zhenshi Information Technology Co Ltd filed Critical Beijing Jingdong Zhenshi Information Technology Co Ltd
Priority to CN202010474096.0A priority Critical patent/CN113742052B/zh
Publication of CN113742052A publication Critical patent/CN113742052A/zh
Application granted granted Critical
Publication of CN113742052B publication Critical patent/CN113742052B/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/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
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

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

Abstract

本申请提供了一种批量任务处理方法和装置,所述方法包括:针对批处理任务创建流水线作业;基于当前CPU的剩余使用率和所述批处理任务的任务量使用预设决策树为所述流水线作业分配资源量;基于为所述流水线作业分配的资源量执行所述流水线业务;其中,所述预设决策树的生成,包括:获取训练数据;其中,所述训练数据包括:批处理任务量、处理时间和处理任务时的CPU使用率;使用所述训练数据生成预设决策树。该方法在资源利用率尽可能允许的前提下能够避免任务量积压,并提高资源使用率。

Description

批量任务处理方法和装置
技术领域
本发明涉及信息处理技术领域,特别涉及一种批量任务处理方法和装置。
背景技术
目前,系统的开发基本上离不开任务,通常一个任务的执行要经过:取任务作业、报文解析作业和任务处理作业三部分。
在实现本申请的过程中,发明人发现用定时器来进行任务的调度,会启用多线程来进行任务的执行,当任务量大的时候,就会出现任务积压问题。
发明内容
有鉴于此,本申请提供一种批量任务处理方法和装置,在资源利用率尽可能允许的前提下能够避免任务量积压,并提高资源使用率。
为解决上述技术问题,本申请的技术方案是这样实现的:
在一个实施例中,提供了一种批量任务处理方法,所述方法包括:
针对批处理任务创建流水线作业;
基于当前CPU的剩余使用率和所述批处理任务的任务量使用预设决策树为所述流水线作业分配资源量;
基于为所述流水线作业分配的资源量执行所述流水线业务;
其中,所述预设决策树的生成,包括:
获取训练数据;其中,所述训练数据包括:批处理任务量、处理时间和处理任务时的CPU使用率;
使用所述训练数据生成预设决策树。
在另一个实施例中,提供了一种批量任务处理装置,所述装置包括:训练单元、创建单元、分配单元和执行单元;
所述训练单元,用于获取训练数据;其中,所述训练数据包括:批处理任务量、处理时间和处理任务时的CPU使用率;使用所述训练数据生成预设决策树;
所述创建单元,用于针对批处理任务创建流水线作业;
所述分配单元,用于基于当前CPU的剩余使用率和所述创建单元创建流水线的批处理任务的任务量使用所述训练单元生成的预设决策树为所述流水线作业分配资源量;
所述执行单元,用于基于所述分配单元为所述流水线作业分配的资源量执行所述流水线业务。
在另一个实施例中,提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现批量任务处理方法的步骤。
在另一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现批量任务处理方法的步骤。
由上面的技术方案可见,上述实施例中通过引入流水线作业的方式进行批任务处理,并基于当前CPU的剩余使用率,以及批处理任务量使用预设决策树分配执行流水线业务的资源量。该方案能够动态调节任务处理的资源分配情况,在资源利用率尽可能允许的前提下能够避免任务量积压,并提高资源使用率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例一中批量任务处理流程示意图;
图2为本申请实施例二中批量任务处理流程示意图;
图3为本申请实施例中第一决策树的结构示意图;
图4为本申请实施例三中使用决策树分配资源量的流程示意图;
图5为本申请实施例四中批量任务处理流程示意图;
图6为本申请实施例中应用于上述技术的装置结构示意图;
图7为本发明实施例提供的电子设备的实体结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其他步骤或单元。
下面以具体实施例对本发明的技术方案进行详细说明。下面几个具体实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
本申请实施例中提供一种批量任务处理方法,通过训练好的决策树动态为批量处理任务的流水线作业分配资源量,能够在避免任务量积压的前提下,提高资源使用率。
该方法应用于批量任务处理装置上,所述装置可以部署在一台PC或服务上。
实施例一
本申请实施例中在批量任务处理之前,需要利用训练数据训练生成预设决策树;生成预设决策树的过程为:
第一步、获取训练数据;其中,所述训练数据包括:批处理任务量、处理时间和处理任务时的中央处理器(CPU)使用率;
这里的训练数据可以是本装置进行批量任务处理过程中记录的,也可以是其他设备进行批量任务处理获取的,还可以是具有相关经验者提供的。
第二步、使用所述训练数据生成预设决策树。
本申请实施例中对生成决策树的算法不进行限制,如可以是ID3算法、C4.5算法、分类树的生成算法、回归树的生成等;
决策树每个非叶子结点对应的其实是一个属性。本申请实施例中对应的属性为:批处理任务量、处理任务时的CPU使用率和处理时间;决策树的生成就是一次挑选这些属性组成自己的节点,到最终可以明确的出结论的时候,即叶子节点,整棵决策树就生成了。
参见图1,图1为本申请实施例一中批量任务处理流程示意图。具体步骤为:
步骤101,针对批处理任务创建流水线作业。
步骤102,基于当前CPU的剩余使用率和所述批处理任务的任务量使用预设决策树为所述流水线作业分配资源量。
步骤103,基于为所述流水线作业分配的资源量执行所述流水线业务。
该实施例通过引入流水线作业的方式进行批任务处理,并基于当前CPU的剩余使用率,以及批处理任务量使用预设决策树分配执行流水线业务的资源量。该方案能够动态调节任务处理的资源分配情况,在资源利用率尽可能允许的前提下能够避免任务量积压,并提高资源使用率。
本申请实施例的流水线作业方式,以及资源分配方式减少了大量线程引起的线程上下文切换开销,极大提升CPU使用率。
实施例二
本申请实施例中的流水线作业包括三部分:取任务作业、报文解析作业和任务处理作业;
对应地,本申请实施例中在批量任务处理之前,需要利用训练数据训练生成的预设决策树也包括三个决策树;分别对应流水线的三部分:对应取任务作业的第一决策树、对应报文解析作业的第二决策树,对应任务处理作业的第三决策树。
生成第一决策树的过程为:
第一步、获取训练数据;其中,所述训练数据包括:批处理任务量、执行取任务作业的时间和执行取任务时的CPU使用率;
第二步、使用所述训练数据生成第一决策树。
生成第二决策树的过程为:
第一步、获取训练数据;其中,所述训练数据包括:批处理任务量、执行报文解析作业的时间和执行报文解析时的CPU使用率;
第二步、使用所述训练数据生成第二决策树。
生成第三决策树的过程为:
第一步、获取训练数据;其中,所述训练数据包括:批处理任务量、执行任务处理作业的时间和执行任务处理业务时的CPU使用率;
第二步、使用所述训练数据生成第三决策树。
本申请实施例中针对第一决策树、第二决策树和第三决策树的训练数据可以是本装置进行批量任务处理过程中记录的,也可以是其他设备进行批量任务处理获取的,还可以是具有相关经验者提供的。
本申请实施例中对生成第一决策树、第二决策树和第三决策树的算法不进行限制,如可以是ID3算法、C4.5算法、分类树的生成算法、回归树的生成等;
决策树每个非叶子结点对应的其实是一个属性。本申请实施例中对应的属性为:批处理任务量、处理任务时的CPU使用率和处理时间;决策树的生成就是一次挑选这些属性组成自己的节点,到最终可以明确的出结论的时候,即叶子节点,整棵决策树就生成了。
参见图2,图2为本申请实施例二中批量任务处理流程示意图。具体步骤为:
步骤201,针对批处理任务创建流水线作业。
步骤202,基于当前CPU的剩余使用率和所述批处理任务的任务量使用所述第一决策树为所述取任务作业分配资源量,使用所述第二决策树为所述报文解析作业分配资源量,所述第三决策树为所述任务处理作业分配资源量。
步骤203,基于为所述取任务作业分配的资源量执行所述取任务作业。
步骤204,基于为所述报文解析作业分配的资源量执行所述报文解析作业。
步骤205,基于为所述任务处理作业分配的资源量执行所述任务处理作业。
本实施例中顺序执行步骤203、步骤204和步骤205。
本实施例中通过对流水线作业的三个阶段分别使用对应的决策树分配资源量,并按执行顺序使用分配的资源量进行对应作业的执行。该方案能够动态调节任务处理过程中各阶段作业的资源分配情况,在资源利用率尽可能允许的前提下能够避免任务量积压,并提高资源使用率。
实施例三
本申请实施例中给出的第一决策树、第二决策树和第三决策树涉及到的属性相同,分别为:批处理任务的任务量、CPU使用率,并通过时间最小原则引入时间属性。
第一决策树、第二决策树和第三决策树的树结构类似,本实施例以第一决策树为例,给出决策树结构示意图。
参见图3,图3为本申请实施例中第一决策树的结构示意图。图3中以三种批处理的任务量为例,分别为:50、100、150。
具体在决策树的下一层分支中以批处理的任务量为100为例,在该分支中又存在三个分支CPU使用率所属范围的分支,分别为:[0,20%),[20%,60%),[60%,80%),然后再以[60%,80%)这一范围对应的分支为例,对应三个处理时间范围,分别为:[0,3s),[3s,5s),[5s,7s),每个时间范围对应一个资源量。
图3所示的结构示意图仅仅为一种示意,具体结构和相关值根据所提供的训练数据训练获得。
参见图4,图4为本申请实施例三中使用决策树分配资源量的流程示意图。
具体步骤为:
步骤401,根据批处理任务的任务量在所述第一决策树中查找到对应的分支,再根据当前CPU的剩余使用率在对应的分支中查找到所属CPU使用率范围的分支中;在所属CPU使用率范围的分支中选择执行时间最少的分支对应的资源量,分配给所述取任务作业。
如假设当前的批处理任务量为100,且CPU的剩余使用率为70%,则在图1中的对应分支中选择处理时间最短的分支为[0S,3S),则对应的资源量为3,则为的当前的取任务作业分配的资源量为3。
本申请实施例中第一决策树的决策原则为在尽可能在当前CPU的剩余使用率所属范围内使用时间最少的情况所对应的资源量分配给取任务作业。
步骤402,根据所述批处理任务的任务量在所述第二决策树中查找到对应的分支,再根据所述当前CPU的剩余使用率在对应的分支中查找到所属CPU使用率范围的分支中;在所属CPU使用率范围的分支中选择执行时间最少的分支对应的资源量,分配给所述报文解析作业。
本申请实施例中第二决策树的决策原则为在尽可能在当前CPU的剩余使用率所属范围内使用时间最少的情况所对应的资源量分配给报文解析作业。
步骤403,根据所述批处理任务的任务量在所述第三决策树中查找到对应的分支,再根据所述当前CPU的剩余使用率在对应的分支中查找到所属CPU使用率范围的分支中;在所属CPU使用率范围的分支中选择执行时间最少的分支对应的资源量,分配给所述任务处理作业。
本申请实施例中第三决策树的决策原则为在尽可能在当前CPU的剩余使用率所属范围内使用时间最少的情况所对应的资源量分配给任务处理作业。
本实施例中资源量分配方式在尽最大可能使用资源使用率的条件下,使相关业务处理时间最少,进而达到合理分配资源量的目的。
实施例四
参见图5,图5为本申请实施例四中批量任务处理流程示意图。具体步骤为:
步骤501,针对批处理任务创建流水线作业。
步骤502,基于当前CPU的剩余使用率和所述批处理任务的任务量使用所述第一决策树为所述取任务作业分配资源量,使用所述第二决策树为所述报文解析作业分配资源量,所述第三决策树为所述任务处理作业分配资源量。
步骤503,基于为所述取任务作业分配的资源量执行所述取任务作业,并记录执行所述取任务的执行时间和CPU使用率。
其中,CPU使用率为执行过程中值最大的CPU使用率。
步骤504,基于为所述报文解析作业分配的资源量执行所述报文解析作业,并记录执行所述报文解析作业的执行时间和CPU使用率。
其中,CPU使用率为执行过程中值最大的CPU使用率。
步骤505,基于为所述任务处理作业分配的资源量执行所述任务处理作业,并记录执行所述任务处理作业的执行时间和CPU使用率。
其中,CPU使用率为执行过程中值最大的CPU使用率。
本申请实施例中记录了各处理阶段的处理时间和CPU使用率,同时还需记录对应的批处理任务量。
在具体实现时,可以每记录一条这样的数据,就开始一次决策树的训练,也可以使用预设时间内记录的这样的数据进行一次决策树的训练,还可以是一共记录了多少条这样的数据之后再开始进行一次决策树的训练。
具体训练过程为:
将针对取任务作业记录的执行时间和CPU使用率,以及对应的批处理任务量,作为训练所述第一决策树的训练数据,训练所述第一决策树;
将针对报文解析作业记录的执行时间和CPU使用率,以及对应的批处理任务量,作为训练所述第二决策树的训练数据,训练所述第二决策树;
将针对任务处理作业记录的执行时间和CPU使用率,以及对应的批处理任务量,作为训练所述第三决策树的训练数据,训练所述第三决策树。
本申请实施例中对流水线作业的三个阶段分别使用对应的决策树分配资源量,并按执行顺序使用分配的资源量进行对应作业的执行。该方案能够动态调节任务处理过程中各阶段作业的资源分配情况,在资源利用率尽可能允许的前提下能够避免任务量积压,并提高资源使用率。
并且利用在批任务处理过程中记录的数据作为训练数据,不断迭代训练第一决策树,第二决策树和第三决策树,能够使决策树更准确地分配资源量,以达到节省时间并提高CPU使用率的目的。
本申请实施例中在针对一个批量处理任务创建流水线的时候,如果创建多条流水线,则训练第一决策树、第二决策树、第三决策树时,增加流水线条数这一属性,如果均为一条流水线或相同数量的流水线,则可以不考虑流水线条数这一属性的影响。
基于同样的发明构思,本申请实施例中还提供一种批量任务处理装置。参见图6,图6为本申请实施例中应用于上述技术的装置结构示意图。所述装置包括:训练单元601、创建单元602、分配单元603和执行单元604;
训练单元601,用于获取训练数据;其中,所述训练数据包括:批处理任务量、处理时间和处理任务时的CPU使用率;使用所述训练数据生成预设决策树;
创建单元602,用于针对批处理任务创建流水线作业;
分配单元603,用于基于当前CPU的剩余使用率和创建单元602创建流水线的批处理任务的任务量使用训练单元601生成的预设决策树为所述流水线作业分配资源量;
执行单元604,用于基于分配单元603为所述流水线作业分配的资源量执行所述流水线业务。
优选地,
创建单元602,具体用于创建的所述流水线作业包括:取任务作业、报文解析作业和任务处理作业;
训练单元601,具体用于生成的所述预设决策树包括:针对取任务作业的第一决策树、针对报文解析作业的第二决策树和针对任务处理作业的第三决策树;其中,所述第一决策树对应的训练数据中的所述处理时间为执行取任务作业的时间,所述处理任务时的CPU使用率为执行所述取业务作业时的CPU使用率;所述第二决策树对应的训练数据中的所述处理时间为执行报文解析作业的时间,所述处理任务时的CPU使用率为执行报文解析作业时的CPU使用率;所述第三决策树对应的训练数据中的所述处理时间为执行任务处理作业的时间,所述处理任务时的CPU使用率为执行任务处理作业时的CPU使用率。
优选地,
分配单元603,具体用于基于当前CPU的剩余使用率和所述批处理任务的任务量使用所述第一决策树为所述取任务作业分配资源量;基于当前CPU的剩余使用率和所述批处理任务的任务量使用所述第二决策树为所述报文解析作业分配资源量;基于当前CPU的剩余使用率和所述批处理任务的任务量使用所述第三决策树为所述任务处理作业分配资源量。
优选地,
分配单元603,具体用于根据所述批处理任务的任务量在所述第一决策树中查找到对应的分支,再根据所述当前CPU的剩余使用率在对应的分支中查找到所属CPU使用率范围的分支中;在所属CPU使用率范围的分支中选择执行时间最少的分支对应的资源量,分配给所述取任务作业;根据所述批处理任务的任务量在所述第二决策树中查找到对应的分支,再根据所述当前CPU的剩余使用率在对应的分支中查找到所属CPU使用率范围的分支中;在所属CPU使用率范围的分支中选择执行时间最少的分支对应的资源量,分配给所述报文解析作业;根据所述批处理任务的任务量在所述第三决策树中查找到对应的分支,再根据所述当前CPU的剩余使用率在对应的分支中查找到所属CPU使用率范围的分支中;在所属CPU使用率范围的分支中选择执行时间最少的分支对应的资源量,分配给所述任务处理作业。
优选地,所述装置进一步包括:记录单元605;
记录单元605,用于执行单元604基于为所述流水线作业分配的资源量执行所述流水线业务中的取任务作业时,记录执行所述取任务作业的执行时间和CPU使用率;基于为所述流水线作业分配的资源量执行所述流水线业务中的报文解析作业时,记录执行所述报文解析作业的执行时间和CPU使用率;基于为所述流水线作业分配的资源量执行所述流水线业务中的任务处理作业时,并记录执行所述任务处理作业的执行时间和CPU使用率;其中,CPU使用率为执行过程中值最大的CPU使用率。
优选地,
训练单元601,进一步用于将所述记录单元针对取任务作业记录的执行时间和CPU使用率,以及对应的批处理任务量,作为训练所述第一决策树的训练数据,训练所述第一决策树;将所述记录单元针对报文解析作业记录的执行时间和CPU使用率,以及对应的批处理任务量,作为训练所述第二决策树的训练数据,训练所述第二决策树;将所述记录单元针对任务处理作业记录的执行时间和CPU使用率,以及对应的批处理任务量,作为训练所述第三决策树的训练数据,训练所述第三决策树。
上述实施例的单元可以集成于一体,也可以分离部署;可以合并为一个单元,也可以进一步拆分成多个子单元。
在另一个实施例中,还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述批量任务处理方法的步骤。
在另一个实施例中,还提供一种计算机可读存储介质,其上存储有计算机指令,所述指令被处理器执行时可实现所述批量任务处理方法中的步骤。
图7为本发明实施例提供的电子设备的实体结构示意图。如图7所示,该电子设备可以包括:处理器(Processor)710、通信接口(Communications Interface)720、存储器(Memory)730和通信总线740,其中,处理器710,通信接口720,存储器730通过通信总线740完成相互间的通信。处理器710可以调用存储器730中的逻辑指令,以执行如下方法:
针对批处理任务创建流水线作业;
基于当前CPU的剩余使用率和所述批处理任务的任务量使用预设决策树为所述流水线作业分配资源量;
基于为所述流水线作业分配的资源量执行所述流水线业务;
其中,所述预设决策树的生成,包括:
获取训练数据;其中,所述训练数据包括:批处理任务量、处理时间和处理任务时的CPU使用率;
使用所述训练数据生成预设决策树。
此外,上述的存储器730中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (14)

1.一种批量任务处理方法,其特征在于,所述方法包括:
针对批处理任务创建流水线作业;
基于当前中央处理器CPU的剩余使用率和所述批处理任务的任务量使用预设决策树为所述流水线作业分配资源量;
基于为所述流水线作业分配的资源量执行所述流水线业务;
其中,所述预设决策树的生成,包括:
获取训练数据;其中,所述训练数据包括:批处理任务量、处理时间和处理任务时的CPU使用率;
使用所述训练数据生成预设决策树。
2.根据权利要求1所述的方法,其特征在于,所述流水线作业包括:取任务作业、报文解析作业和任务处理作业;
所述预设决策树包括:针对取任务作业的第一决策树、针对报文解析作业的第二决策树和针对任务处理作业的第三决策树;
其中,所述第一决策树对应的训练数据中的所述处理时间为执行取任务作业的时间,所述处理任务时的CPU使用率为执行所述取业务作业时的CPU使用率;
所述第二决策树对应的训练数据中的所述处理时间为执行报文解析作业的时间,所述处理任务时的CPU使用率为执行报文解析作业时的CPU使用率;
所述第三决策树对应的训练数据中的所述处理时间为执行任务处理作业的时间,所述处理任务时的CPU使用率为执行任务处理作业时的CPU使用率。
3.根据权利要求2所述的方法,其特征在于,所述基于当前CPU的使用率和所述批处理任务的任务量使用预设决策树为所述流水线作业分配资源量,包括:
基于当前CPU的剩余使用率和所述批处理任务的任务量使用所述第一决策树为所述取任务作业分配资源量;
基于当前CPU的剩余使用率和所述批处理任务的任务量使用所述第二决策树为所述报文解析作业分配资源量;
基于当前CPU的剩余使用率和所述批处理任务的任务量使用所述第三决策树为所述任务处理作业分配资源量。
4.根据权利要求3所述的方法,其特征在于,
所述基于当前CPU的剩余使用率和所述批处理任务的任务量使用所述第一决策树为所述取任务作业分配资源量,包括:
根据所述批处理任务的任务量在所述第一决策树中查找到对应的分支,再根据所述当前CPU的剩余使用率在对应的分支中查找到所属CPU使用率范围的分支中;在所属CPU使用率范围的分支中选择执行时间最少的分支对应的资源量,分配给所述取任务作业;
所述基于当前CPU的剩余使用率和所述批处理任务的任务量使用所述第二决策树为所述报文解析作业分配资源量,包括:
根据所述批处理任务的任务量在所述第二决策树中查找到对应的分支,再根据所述当前CPU的剩余使用率在对应的分支中查找到所属CPU使用率范围的分支中;在所属CPU使用率范围的分支中选择执行时间最少的分支对应的资源量,分配给所述报文解析作业;
所述基于当前CPU的剩余使用率和所述批处理任务的任务量使用所述第三决策树为所述任务处理作业分配资源量,包括:
根据所述批处理任务的任务量在所述第三决策树中查找到对应的分支,再根据所述当前CPU的剩余使用率在对应的分支中查找到所属CPU使用率范围的分支中;在所属CPU使用率范围的分支中选择执行时间最少的分支对应的资源量,分配给所述任务处理作业。
5.根据权利要求3所述的方法,其特征在于,所述方法进一步包括:
基于为所述流水线作业分配的资源量执行所述流水线业务中的取任务作业时,记录执行所述取任务作业的执行时间和CPU使用率;
基于为所述流水线作业分配的资源量执行所述流水线业务中的报文解析作业时,记录执行所述报文解析作业的执行时间和CPU使用率;
基于为所述流水线作业分配的资源量执行所述流水线业务中的任务处理作业时,并记录执行所述任务处理作业的执行时间和CPU使用率;
其中,CPU使用率为执行过程中值最大的CPU使用率。
6.根据权利要求5所述的方法,其特征在于,所述方法进一步包括:
将针对取任务作业记录的执行时间和CPU使用率,以及对应的批处理任务量,作为训练所述第一决策树的训练数据,训练所述第一决策树;
将针对报文解析作业记录的执行时间和CPU使用率,以及对应的批处理任务量,作为训练所述第二决策树的训练数据,训练所述第二决策树;
将针对任务处理作业记录的执行时间和CPU使用率,以及对应的批处理任务量,作为训练所述第三决策树的训练数据,训练所述第三决策树。
7.一种批量任务处理装置,其特征在于,所述装置包括:训练单元、创建单元、分配单元和执行单元;
所述训练单元,用于获取训练数据;其中,所述训练数据包括:批处理任务量、处理时间和处理任务时的中央处理器CPU使用率;使用所述训练数据生成预设决策树;
所述创建单元,用于针对批处理任务创建流水线作业;
所述分配单元,用于基于当前CPU的剩余使用率和所述创建单元创建流水线的批处理任务的任务量使用所述训练单元生成的预设决策树为所述流水线作业分配资源量;
所述执行单元,用于基于所述分配单元为所述流水线作业分配的资源量执行所述流水线业务。
8.根据权利要求7所述的装置,其特征在于,
所述创建单元,具体用于创建的所述流水线作业包括:取任务作业、报文解析作业和任务处理作业;
所述训练单元,具体用于生成的所述预设决策树包括:针对取任务作业的第一决策树、针对报文解析作业的第二决策树和针对任务处理作业的第三决策树;其中,所述第一决策树对应的训练数据中的所述处理时间为执行取任务作业的时间,所述处理任务时的CPU使用率为执行所述取业务作业时的CPU使用率;所述第二决策树对应的训练数据中的所述处理时间为执行报文解析作业的时间,所述处理任务时的CPU使用率为执行报文解析作业时的CPU使用率;所述第三决策树对应的训练数据中的所述处理时间为执行任务处理作业的时间,所述处理任务时的CPU使用率为执行任务处理作业时的CPU使用率。
9.根据权利要求8所述的装置,其特征在于,
所述分配单元,具体用于基于当前CPU的剩余使用率和所述批处理任务的任务量使用所述第一决策树为所述取任务作业分配资源量;基于当前CPU的剩余使用率和所述批处理任务的任务量使用所述第二决策树为所述报文解析作业分配资源量;基于当前CPU的剩余使用率和所述批处理任务的任务量使用所述第三决策树为所述任务处理作业分配资源量。
10.根据权利要求9所述的装置,其特征在于,
所述分配单元,具体用于根据所述批处理任务的任务量在所述第一决策树中查找到对应的分支,再根据所述当前CPU的剩余使用率在对应的分支中查找到所属CPU使用率范围的分支中;在所属CPU使用率范围的分支中选择执行时间最少的分支对应的资源量,分配给所述取任务作业;根据所述批处理任务的任务量在所述第二决策树中查找到对应的分支,再根据所述当前CPU的剩余使用率在对应的分支中查找到所属CPU使用率范围的分支中;在所属CPU使用率范围的分支中选择执行时间最少的分支对应的资源量,分配给所述报文解析作业;根据所述批处理任务的任务量在所述第三决策树中查找到对应的分支,再根据所述当前CPU的剩余使用率在对应的分支中查找到所属CPU使用率范围的分支中;在所属CPU使用率范围的分支中选择执行时间最少的分支对应的资源量,分配给所述任务处理作业。
11.根据权利要求9所述的装置,其特征在于,所述装置进一步包括:记录单元;
所述记录单元,用于所述执行单元基于为所述流水线作业分配的资源量执行所述流水线业务中的取任务作业时,记录执行所述取任务作业的执行时间和CPU使用率;基于为所述流水线作业分配的资源量执行所述流水线业务中的报文解析作业时,记录执行所述报文解析作业的执行时间和CPU使用率;基于为所述流水线作业分配的资源量执行所述流水线业务中的任务处理作业时,并记录执行所述任务处理作业的执行时间和CPU使用率;其中,CPU使用率为执行过程中值最大的CPU使用率。
12.根据权利要求11所述的装置,其特征在于,
所述训练单元,进一步用于将所述记录单元针对取任务作业记录的执行时间和CPU使用率,以及对应的批处理任务量,作为训练所述第一决策树的训练数据,训练所述第一决策树;将所述记录单元针对报文解析作业记录的执行时间和CPU使用率,以及对应的批处理任务量,作为训练所述第二决策树的训练数据,训练所述第二决策树;将所述记录单元针对任务处理作业记录的执行时间和CPU使用率,以及对应的批处理任务量,作为训练所述第三决策树的训练数据,训练所述第三决策树。
13.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-6任一项所述的方法。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-6任一项所述的方法。
CN202010474096.0A 2020-05-29 2020-05-29 批量任务处理方法和装置 Active CN113742052B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010474096.0A CN113742052B (zh) 2020-05-29 2020-05-29 批量任务处理方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010474096.0A CN113742052B (zh) 2020-05-29 2020-05-29 批量任务处理方法和装置

Publications (2)

Publication Number Publication Date
CN113742052A true CN113742052A (zh) 2021-12-03
CN113742052B CN113742052B (zh) 2023-09-01

Family

ID=78724561

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010474096.0A Active CN113742052B (zh) 2020-05-29 2020-05-29 批量任务处理方法和装置

Country Status (1)

Country Link
CN (1) CN113742052B (zh)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05334102A (ja) * 1992-05-28 1993-12-17 Nec Corp ジョブ実行状況予測装置
CN102567503A (zh) * 2010-12-16 2012-07-11 微软公司 用于数据去重复的可扩展流水线
CN105892996A (zh) * 2015-12-14 2016-08-24 乐视网信息技术(北京)股份有限公司 一种批量数据处理的流水线作业方法及装置
WO2017109890A1 (ja) * 2015-12-24 2017-06-29 株式会社日立製作所 管理計算機及びバッチ処理の実行方法
CN107908479A (zh) * 2017-12-11 2018-04-13 北京奇艺世纪科技有限公司 一种节点资源分配方法及装置
CN108182115A (zh) * 2017-12-28 2018-06-19 福州大学 一种云环境下的虚拟机负载均衡方法
CN108446176A (zh) * 2018-02-07 2018-08-24 平安普惠企业管理有限公司 一种任务分配方法、计算机可读存储介质及终端设备
CN108881495A (zh) * 2018-08-13 2018-11-23 中国平安财产保险股份有限公司 资源分配方法、装置、计算机设备及存储介质
CN109472296A (zh) * 2018-10-17 2019-03-15 阿里巴巴集团控股有限公司 一种基于梯度提升决策树的模型训练方法及装置
CN110321222A (zh) * 2019-07-01 2019-10-11 中国人民解放军国防科技大学 基于决策树预测的数据并行作业资源分配方法
US10452441B1 (en) * 2018-10-15 2019-10-22 Accenture Global Solutions Limited Determining an allocation of computing resources for a job
CN111104222A (zh) * 2019-12-16 2020-05-05 上海众源网络有限公司 任务处理方法、装置、计算机设备和存储介质

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05334102A (ja) * 1992-05-28 1993-12-17 Nec Corp ジョブ実行状況予測装置
CN102567503A (zh) * 2010-12-16 2012-07-11 微软公司 用于数据去重复的可扩展流水线
CN105892996A (zh) * 2015-12-14 2016-08-24 乐视网信息技术(北京)股份有限公司 一种批量数据处理的流水线作业方法及装置
WO2017109890A1 (ja) * 2015-12-24 2017-06-29 株式会社日立製作所 管理計算機及びバッチ処理の実行方法
CN107908479A (zh) * 2017-12-11 2018-04-13 北京奇艺世纪科技有限公司 一种节点资源分配方法及装置
CN108182115A (zh) * 2017-12-28 2018-06-19 福州大学 一种云环境下的虚拟机负载均衡方法
CN108446176A (zh) * 2018-02-07 2018-08-24 平安普惠企业管理有限公司 一种任务分配方法、计算机可读存储介质及终端设备
CN108881495A (zh) * 2018-08-13 2018-11-23 中国平安财产保险股份有限公司 资源分配方法、装置、计算机设备及存储介质
US10452441B1 (en) * 2018-10-15 2019-10-22 Accenture Global Solutions Limited Determining an allocation of computing resources for a job
CN109472296A (zh) * 2018-10-17 2019-03-15 阿里巴巴集团控股有限公司 一种基于梯度提升决策树的模型训练方法及装置
CN110321222A (zh) * 2019-07-01 2019-10-11 中国人民解放军国防科技大学 基于决策树预测的数据并行作业资源分配方法
CN111104222A (zh) * 2019-12-16 2020-05-05 上海众源网络有限公司 任务处理方法、装置、计算机设备和存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
苏超;梁毅;: "混部负载场景下离线负载资源调度策略研究", 软件导刊, no. 01, pages 70 - 73 *

Also Published As

Publication number Publication date
CN113742052B (zh) 2023-09-01

Similar Documents

Publication Publication Date Title
CN109993299B (zh) 数据训练方法及装置、存储介质、电子装置
CN106201661B (zh) 用于弹性伸缩虚拟机集群的方法和装置
CN109344395A (zh) 一种数据处理方法、装置、服务器及存储介质
CN113220431B (zh) 跨云的分布式数据任务调度方法、设备及存储介质
CN106528189B (zh) 一种启动备份任务的方法、装置及电子设备
CN112241316A (zh) 一种分布式调度应用的方法以及装置
CN107341054A (zh) 任务执行方法、装置及计算机可读存储介质
CN106021512A (zh) 一种页面刷新方法及装置
CN111158800B (zh) 基于映射关系构建任务dag的方法及装置
CN106874080B (zh) 基于分布式服务器集群的数据计算方法及系统
CN106598726A (zh) 一种多任务管理系统及其分布式部署方法
CN113032093B (zh) 分布式计算方法、装置及平台
CN109327321A (zh) 网络模型业务执行方法、装置、sdn控制器及可读存储介质
CN114237850A (zh) 一种量子计算分布式队列管理方法及系统
CN110532267A (zh) 字段的确定方法、装置、存储介质及电子装置
CN109800074A (zh) 任务数据并发执行方法、装置以及电子设备
CN108228355A (zh) 任务处理方法及装置、任务调度方法及装置
CN110308914A (zh) 升级处理方法、装置、设备、系统及计算机可读存储介质
CN113742052A (zh) 批量任务处理方法和装置
CN106970836A (zh) 执行任务的方法和系统
CN106844605B (zh) 批量数据逻辑处理方法及装置
CN104360898B (zh) 运行任务的方法和装置
CN111831425B (zh) 一种数据处理方法、装置及设备
CN112995532A (zh) 视频处理方法及装置
CN111400050A (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