CN112114973B - 一种数据处理方法及装置 - Google Patents

一种数据处理方法及装置 Download PDF

Info

Publication number
CN112114973B
CN112114973B CN202011049660.0A CN202011049660A CN112114973B CN 112114973 B CN112114973 B CN 112114973B CN 202011049660 A CN202011049660 A CN 202011049660A CN 112114973 B CN112114973 B CN 112114973B
Authority
CN
China
Prior art keywords
task
subtasks
queue
execution
queues
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
CN202011049660.0A
Other languages
English (en)
Other versions
CN112114973A (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.)
Bank of China Ltd
Original Assignee
Bank of China 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 Bank of China Ltd filed Critical Bank of China Ltd
Priority to CN202011049660.0A priority Critical patent/CN112114973B/zh
Publication of CN112114973A publication Critical patent/CN112114973A/zh
Application granted granted Critical
Publication of CN112114973B publication Critical patent/CN112114973B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • 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
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/02Banking, e.g. interest calculation or account maintenance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5021Priority
    • 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
    • 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)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • General Engineering & Computer Science (AREA)
  • Development Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Technology Law (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请实施例提供了一种数据处理方法及装置,可以利用任务拆分规则对待处理任务进行拆分,得到多个子任务,子任务具有任务紧急指数,体现子任务的紧急程度,根据子任务的任务紧急指数,将子任务分配至RabbitMQ中的多个任务队列中的至少一个,多个任务队列具有不同的优先级,任务队列的优先级根据任务队列的队列紧急指数和时间权重确定,队列紧急指数表征任务队列的紧急程度,时间权重根据任务队列中子任务的未被执行时长确定,任务队列的队列紧急指数与任务队列中的子任务的任务紧急指数匹配,这样,通过分布式结果订阅到RabbitMQ,根据多个任务队列的优先级,获取并执行这些子任务,提高子任务的执行效率,减少待处理任务的执行时间。

Description

一种数据处理方法及装置
技术领域
本申请涉及计算机领域,尤其涉及一种数据处理方法及装置。
背景技术
现阶段银行内部的任务通常利用顺序执行的方式,导致任务执行耗时较多,执行效率低下。尤其是对于数据量较大且复杂的任务而言,对于任务的各个方面进行顺序执行,需要长时间的占用同一台处理器,效率较低,一旦该处理器出现故障,则会导致整个任务执行失败。
发明内容
为了解决现有技术存在的上述技术问题,本申请提供了一种数据处理方法,提高了数据处理的效率以及可靠性。
本申请提供了一种数据处理方法,包括:
利用任务拆分规则对待处理任务进行拆分,得到多个子任务;所述多个子任务具有任务紧急指数;
根据所述多个子任务的任务紧急指数,将所述多个子任务分配至RabbitMQ中的多个任务队列中的至少一个;所述多个任务队列具有不同的优先级;所述优先级根据所述任务队列的队列紧急指数和时间权重确定,所述队列紧急指数表征所述任务队列的紧急程度,所述时间权重根据所述任务队列中子任务的未被执行时长确定;所述任务队列的队列紧急指数与所述任务队列中的子任务的任务紧急指数匹配;
通过分布式节点订阅到RabbitMQ,根据所述多个任务队列的优先级,获取并执行所述多个子任务。
可选的,所述多个子任务的任务信息以及任务状态存储在redis任务池中,所述任务状态包括未执行、正在执行、完成执行、执行错误中的一种。
可选的,所述方法还包括:
在所述子任务的任务状态为执行错误时,将所述子任务重新分配至任务队列中进行执行。
可选的,所述方法还包括:
在所述待处理任务的多个子任务均完成执行后,对所述多个子任务的执行结果进行归并,得到所述待处理任务的执行结果。
可选的,所述方法还包括:
在所述待处理任务的多个子任务均完成执行后,根据所述多个子任务的执行时长以及耗费资源数,更新所述任务拆分规则。
本申请实施例还提供了一种数据处理装置,包括:
任务拆分单元,用于利用任务拆分规则对待处理任务进行拆分,得到多个子任务;所述多个子任务具有任务紧急指数;
任务分配单元,用于根据所述多个子任务的任务紧急指数,将所述多个子任务分配至RabbitMQ中的多个任务队列中的至少一个;所述多个任务队列具有不同的优先级;所述优先级根据所述任务队列的队列紧急指数和时间权重确定,所述队列紧急指数表征所述任务队列的紧急程度,所述时间权重根据所述任务队列中子任务的未被执行时长确定;所述任务队列的队列紧急指数与所述任务队列中的子任务的任务紧急指数匹配;
任务执行单元,用于通过分布式节点订阅到RabbitMQ,根据所述多个任务队列的优先级,获取并执行所述多个子任务。
可选的,所述多个子任务的任务信息以及任务状态存储在redis任务池中,所述任务状态包括未执行、正在执行、完成执行、执行错误中的一种。
可选的,所述装置还包括:
任务再执行单元,用于在所述子任务的任务状态为执行错误时,将所述子任务重新分配至任务队列中进行执行。
可选的,所述装置还包括:
任务归并单元,用于在所述待处理任务的多个子任务均完成执行后,对所述多个子任务的执行结果进行归并,得到所述待处理任务的执行结果。
可选的,所述装置还包括:
规则更新单元,用于在所述待处理任务的多个子任务均完成执行后,根据所述多个子任务的执行时长以及耗费资源数,更新所述任务拆分规则。
本申请提供的技术方案至少具有以下优点:
本申请实施例提供了一种数据处理方法及装置,可以利用任务拆分规则对待处理任务进行拆分,得到多个子任务,子任务具有任务紧急指数,体现子任务的紧急程度,根据子任务的任务紧急指数,将子任务分配至RabbitMQ中的多个任务队列中的至少一个,多个任务队列具有不同的优先级,任务队列的优先级根据任务队列的队列紧急指数和时间权重确定,队列紧急指数表征任务队列的紧急程度,时间权重根据任务队列中子任务的未被执行时长确定,任务队列的队列紧急指数与任务队列中的子任务的任务紧急指数匹配,这样,通过分布式结果订阅到RabbitMQ,根据多个任务队列的优先级,获取并执行这些子任务。由于任务队列具有优先级,则可以对子任务的执行顺序有一定的调整,充分考虑各个队列本身的队列紧急指数以及其内部子任务的未被执行时长,保证各个子任务的合理的执行顺序,提高子任务的执行效率,减少待处理任务的执行时间。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本申请实施例中一种数据方法的流程图;
图2为本申请实施例中一种数据装置的示意图。
具体实施方式
目前,段银行内部的任务通常利用顺序执行的方式,导致任务执行耗时较多,执行效率低下。尤其是对于数据量较大且复杂的任务而言,对于任务的各个方面进行顺序执行,需要长时间的占用同一台处理器,效率较低,一旦该处理器出现故障,则会导致整个任务执行失败。
发明人经过研究发现,即使少数银行采用分布式集群的方式进行任务处理,但是由于业务的发现导致任务的数量量越来越大,计算节点无法迅速扩展,而且,若分布式集群的处理节点出现故障,很有可能导致整个任务执行失败。
为了解决以上技术问题,本申请实施例提供了一种数据处理方法及装置,可以利用任务拆分规则对待处理任务进行拆分,得到多个子任务,子任务具有任务紧急指数,体现子任务的紧急程度,根据子任务的任务紧急指数,将子任务分配至RabbitMQ中的多个任务队列中的至少一个,多个任务队列具有不同的优先级,任务队列的优先级根据任务队列的队列紧急指数和时间权重确定,队列紧急指数表征任务队列的紧急程度,时间权重根据任务队列中子任务的未被执行时长确定,任务队列的队列紧急指数与任务队列中的子任务的任务紧急指数匹配,这样,通过分布式结果订阅到RabbitMQ,根据多个任务队列的优先级,获取并执行这些子任务。由于任务队列具有优先级,则可以对子任务的执行顺序有一定的调整,充分考虑各个队列本身的队列紧急指数以及其内部子任务的未被执行时长,保证各个子任务的合理的执行顺序,提高子任务的执行效率,减少待处理任务的执行时间。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供了一种数据处理方法及装置,下面结合附图具体说明。
本申请实施例提供了一种数据处理方法,参考图1所示,为本申请实施例提供的一种数据处理方法的流程图,可以包括以下步骤:
S101,利用任务拆分规则对待处理任务进行拆分,得到多个子任务。
本申请实施例中,可以获取待处理任务,待处理任务通常耗时较多,数据量较大,因此可以对待处理任务进行拆分,得到多个子任务,通过并行对多个子任务进行执行,从而减少对待处理任务的执行时长。
对于待处理任务的拆分,可以有预先确定的任务拆分规则,例如根据待处理任务的任务结构进行拆分,将关联较大的运算过程作为一个子任务,将关联较小的多个运算过程作为多个子任务,以减少子任务在并行处理过程中的等待时长。在拆分后可以对子任务进行执行,进而可以利用拆分自学习模型,通过对子任务的执行时间以及耗费资源数进行自学习和优化,从而更新任务拆分规则,从而优化任务拆分规则。
拆分后得到的子任务可以具有任务紧急指数,任务紧急指数体现子任务的处理优先级,可以根据子任务在待处理任务中的作用确定,例如其他子任务需要该子任务的处理结果等。
在拆分得到多个子任务后,可以将多个子任务的任务信息以及任务状态存储在数据库任务池中,数据库任务池可以为redis任务池,任务状态可以包括未执行、正在执行、完成执行和执行错误的一种。任务信息可以为子任务的任务边界。
S102,根据子任务的任务紧急指数,将子任务分配至RabbitMQ中的多个任务队列中的至少一个。
本申请实施例中,在需要执行待处理任务时,可以为子任务设置任务队列,从而将不同任务紧急指数的子任务分配至多个任务队列中的至少一个。其中,任务队列可以是基于RabbitMQ的。
不同任务队列可以具有不同的优先级,用于表征该任务队列中的子任务的执行优先级,任务队列的优先级可以根据任务队列的队列紧急指数和时间权重确定,任务队列的队列紧急指数可以表征任务队列的紧急程度,是任务队列被创建时确定的,是任务队列的固有属性,时间权重可以根据任务队列中子任务的未被执行时长确定,是子任务在执行的过程中赋予到任务队列的属性,且会随着时间的变化而变化。
任务队列的队列紧急指数与任务队列中的子任务的任务紧急指数匹配,这样可以将任务紧急指数较高的子任务分配至队列紧急指数高的任务队列,以优先执行任务紧急指数高的子任务。
举例来说,任务队列可以分为三个等级:高等级(HIGH)、中等级(NORMAL)和低等级(LAST),分别对应的队列紧急指数为0.75、0.5和0.2,则高等级的任务队列中的子任务会被优先执行,中等级的任务队列中的子任务次之,低等级的任务队列中的子任务最后处理。
然而仅通过队列紧急指数来确定子任务的执行优先级,存在低等级的任务队列中的子任务长时间不被执行的问题,则一些计算资源存在浪费,则可以为任务队列设置时间权重,时间权重可以根据任务队列中子任务的未被执行时长确定,这样随着中等级和低等级中子任务的未被执行时长的增加,其时间权重也增大,从而其优先级也增大。具体的,任务等级的优先级可以为队列紧急指数与时间权重的乘积。
举例来说,中等级和低等级的任务队列的时间权重的初始值为1,中等级的任务队列中的子任务的未被执行时长每增加一分钟,其时间权重增加0.2,低等级的任务队列中的子任务的未被执行时长每增加两分钟,其时间权重增加0.2,这样,在高等级的任务队列中的子任务被执行2分钟后,中等级的任务队列的优先级为0.9,超过了高等级的任务队列,则优先执行中等级的任务队列中的子任务,在中等级的任务队列中的子任务被执行后,其时间权重恢复初始值。在高等级的队列和中等级的对垒的子任务被执行6分钟后,低等级的任务队列的优先级为0.8,超过了高等级的任务队列,则优先执行低等级的任务队列中的子任务,在低等级的任务队列中的子任务被执行后,其时间权重恢复初始值。
S103,通过分布式节点订阅到RabbitMQ,根据多个任务队列的优先级,获取并执行多个子任务。
在将子任务分配至RabbitMQ中的多个任务队列中的至少一个时,可以通过分布式节点订阅到RabbitMQ,从而利用分布式节点,根据多个任务队列的优先级获取并执行多个子任务。分布式节点可以为多个,可以为相同的数据处理节点,也可以为不同的数据处理节点,分布式节点可以根据自身的计算资源以及子任务的特性匹配子任务并执行,多个分布式节点可以并行执行各个子任务,从而减少待处理任务的执行时间。
其中,在分布式节点获取到子任务后,数据库中的该子任务的任务状态可以从未执行更新为正在执行,在分布式节点对该子任务执行完毕得到执行结果后,数据库中的该子任务的任务状态可以从正在执行更新为完成执行。若存在分布式节点对子任务执行错误,则数据库中的该子任务的任务状态可以从正在执行更新为执行错误,将所述子任务重新分配至任务队列中进行执行,并排查子任务执行错误的原因。
在待处理任务的多个子任务均完成执行后,可以对多个子任务的执行结果进行归并,得到待处理任务的执行结果,至此,完成了待处理任务的执行。由于其中多个子任务可以并行执行,则相比于利用单一计算节点进行待处理任务的执行而言,本申请实施例中待处理任务的执行需要更短的时间,具有更高的数据处理效率。
在待处理任务的多个子任务均完成执行后,可以利用拆分自学习模型,通过对子任务的执行时间以及耗费资源数进行自学习和优化,从而更新任务拆分规则,从而优化任务拆分规则,以进一步提高任务执行效率。
本申请实施例提供了一种数据处理方法,可以利用任务拆分规则对待处理任务进行拆分,得到多个子任务,子任务具有任务紧急指数,体现子任务的紧急程度,根据子任务的任务紧急指数,将子任务分配至RabbitMQ中的多个任务队列中的至少一个,多个任务队列具有不同的优先级,任务队列的优先级根据任务队列的队列紧急指数和时间权重确定,队列紧急指数表征任务队列的紧急程度,时间权重根据任务队列中子任务的未被执行时长确定,任务队列的队列紧急指数与任务队列中的子任务的任务紧急指数匹配,这样,通过分布式结果订阅到RabbitMQ,根据多个任务队列的优先级,获取并执行这些子任务。由于任务队列具有优先级,则可以对子任务的执行顺序有一定的调整,充分考虑各个队列本身的队列紧急指数以及其内部子任务的未被执行时长,保证各个子任务的合理的执行顺序,提高子任务的执行效率,减少待处理任务的执行时间。
基于上述实施例提供的一种数据处理方法,本申请实施例还提供了一种数据处理装置,下面结合附图具体说明。
参见图2,该图为本申请实施例提供的一种数据处理装置的示意图,该装置可以包括:
任务拆分单元110,用于利用任务拆分规则对待处理任务进行拆分,得到多个子任务;所述多个子任务具有任务紧急指数;
任务分配单元120,用于根据所述多个子任务的任务紧急指数,将所述多个子任务分配至RabbitMQ中的多个任务队列中的至少一个;所述多个任务队列具有不同的优先级;所述优先级根据所述任务队列的队列紧急指数和时间权重确定,所述队列紧急指数表征所述任务队列的紧急程度,所述时间权重根据所述任务队列中子任务的未被执行时长确定;所述任务队列的队列紧急指数与所述任务队列中的子任务的任务紧急指数匹配;
任务执行单元130,用于通过分布式节点订阅到RabbitMQ,根据所述多个任务队列的优先级,获取并执行所述多个子任务。
可选的,所述多个子任务的任务信息以及任务状态存储在redis任务池中,所述任务状态包括未执行、正在执行、完成执行、执行错误中的一种。
可选的,所述装置还包括:
任务再执行单元,用于在所述子任务的任务状态为执行错误时,将所述子任务重新分配至任务队列中进行执行。
可选的,所述装置还包括:
任务归并单元,用于在所述待处理任务的多个子任务均完成执行后,对所述多个子任务的执行结果进行归并,得到所述待处理任务的执行结果。
可选的,所述装置还包括:
规则更新单元,用于在所述待处理任务的多个子任务均完成执行后,根据所述多个子任务的执行时长以及耗费资源数,更新所述任务拆分规则。
本申请实施例提供了一种数据处理装置,可以利用任务拆分规则对待处理任务进行拆分,得到多个子任务,子任务具有任务紧急指数,体现子任务的紧急程度,根据子任务的任务紧急指数,将子任务分配至RabbitMQ中的多个任务队列中的至少一个,多个任务队列具有不同的优先级,任务队列的优先级根据任务队列的队列紧急指数和时间权重确定,队列紧急指数表征任务队列的紧急程度,时间权重根据任务队列中子任务的未被执行时长确定,任务队列的队列紧急指数与任务队列中的子任务的任务紧急指数匹配,这样,通过分布式结果订阅到RabbitMQ,根据多个任务队列的优先级,获取并执行这些子任务。由于任务队列具有优先级,则可以对子任务的执行顺序有一定的调整,充分考虑各个队列本身的队列紧急指数以及其内部子任务的未被执行时长,保证各个子任务的合理的执行顺序,提高子任务的执行效率,减少待处理任务的执行时间。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元及模块可以是或者也可以不是物理上分开的。另外,还可以根据实际的需要选择其中的部分或者全部单元和模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本申请的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

Claims (10)

1.一种数据处理方法,其特征在于,包括:
利用任务拆分规则对待处理任务进行拆分,得到多个子任务;所述多个子任务具有任务紧急指数;
根据所述多个子任务的任务紧急指数,将所述多个子任务分配至RabbitMQ中的多个任务队列中的至少一个;所述多个任务队列具有不同的优先级;所述优先级根据所述任务队列的队列紧急指数和时间权重确定,所述队列紧急指数表征所述任务队列的紧急程度,所述时间权重根据所述任务队列中子任务的未被执行时长确定;所述任务队列的队列紧急指数与所述任务队列中的子任务的任务紧急指数匹配;
通过分布式节点订阅到RabbitMQ,根据所述多个任务队列的优先级,获取并执行所述多个子任务。
2.根据权利要求1所述的方法,其特征在于,所述多个子任务的任务信息以及任务状态存储在redis任务池中,所述任务状态包括未执行、正在执行、完成执行、执行错误中的一种。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
在所述子任务的任务状态为执行错误时,将所述子任务重新分配至任务队列中进行执行。
4.根据权利要求1-3任意一项所述的方法,其特征在于,所述方法还包括:
在所述待处理任务的多个子任务均完成执行后,对所述多个子任务的执行结果进行归并,得到所述待处理任务的执行结果。
5.根据权利要求1-3任意一项所述的方法,其特征在于,所述方法还包括:
在所述待处理任务的多个子任务均完成执行后,根据所述多个子任务的执行时长以及耗费资源数,更新所述任务拆分规则。
6.一种数据处理装置,其特征在于,包括:
任务拆分单元,用于利用任务拆分规则对待处理任务进行拆分,得到多个子任务;所述多个子任务具有任务紧急指数;
任务分配单元,用于根据所述多个子任务的任务紧急指数,将所述多个子任务分配至RabbitMQ中的多个任务队列中的至少一个;所述多个任务队列具有不同的优先级;所述优先级根据所述任务队列的队列紧急指数和时间权重确定,所述队列紧急指数表征所述任务队列的紧急程度,所述时间权重根据所述任务队列中子任务的未被执行时长确定;所述任务队列的队列紧急指数与所述任务队列中的子任务的任务紧急指数匹配;
任务执行单元,用于通过分布式节点订阅到RabbitMQ,根据所述多个任务队列的优先级,获取并执行所述多个子任务。
7.根据权利要求6所述的装置,其特征在于,所述多个子任务的任务信息以及任务状态存储在redis任务池中,所述任务状态包括未执行、正在执行、完成执行、执行错误中的一种。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
任务再执行单元,用于在所述子任务的任务状态为执行错误时,将所述子任务重新分配至任务队列中进行执行。
9.根据权利要求6-8任意一项所述的装置,其特征在于,所述装置还包括:
任务归并单元,用于在所述待处理任务的多个子任务均完成执行后,对所述多个子任务的执行结果进行归并,得到所述待处理任务的执行结果。
10.根据权利要求6-8任意一项所述的装置,其特征在于,所述装置还包括:
规则更新单元,用于在所述待处理任务的多个子任务均完成执行后,根据所述多个子任务的执行时长以及耗费资源数,更新所述任务拆分规则。
CN202011049660.0A 2020-09-29 2020-09-29 一种数据处理方法及装置 Active CN112114973B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011049660.0A CN112114973B (zh) 2020-09-29 2020-09-29 一种数据处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011049660.0A CN112114973B (zh) 2020-09-29 2020-09-29 一种数据处理方法及装置

Publications (2)

Publication Number Publication Date
CN112114973A CN112114973A (zh) 2020-12-22
CN112114973B true CN112114973B (zh) 2024-02-13

Family

ID=73797244

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011049660.0A Active CN112114973B (zh) 2020-09-29 2020-09-29 一种数据处理方法及装置

Country Status (1)

Country Link
CN (1) CN112114973B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114697705B (zh) * 2020-12-29 2024-03-22 深圳云天励飞技术股份有限公司 视频流对象处理方法、装置、视频流处理系统、电子设备
CN113190359B (zh) * 2021-07-01 2022-02-22 苏州贝克微电子股份有限公司 一种仿真请求处理方法、装置、电子设备及可读存储介质
CN113687950A (zh) * 2021-08-31 2021-11-23 平安医疗健康管理股份有限公司 基于优先级的任务分配方法、装置、设备及存储介质
CN114047875B (zh) * 2021-10-25 2024-04-19 深圳市硅格半导体有限公司 命令调度方法、装置、设备及计算机程序产品
CN113961328B (zh) * 2021-10-26 2022-07-19 深圳大学 一种任务处理方法、装置、存储介质及电子设备
CN115016919B (zh) * 2022-08-05 2022-11-04 阿里云计算有限公司 任务调度方法、电子设备和存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104657214A (zh) * 2015-03-13 2015-05-27 华存数据信息技术有限公司 一种基于多队列和多优先级的大数据任务管理系统和方法
CN106095545A (zh) * 2016-06-01 2016-11-09 东软集团股份有限公司 任务调度方法及装置
CN107346263A (zh) * 2017-06-29 2017-11-14 上海联影医疗科技有限公司 任务执行方法、存储介质以及计算机设备
CN109408215A (zh) * 2018-11-07 2019-03-01 郑州云海信息技术有限公司 一种计算节点的任务调度方法和装置
CN109814988A (zh) * 2017-11-22 2019-05-28 深圳竹云科技有限公司 任务处理方法及系统
CN111352736A (zh) * 2020-02-28 2020-06-30 中国平安人寿保险股份有限公司 大数据资源的调度方法、装置、服务器及存储介质
CN111461525A (zh) * 2020-03-30 2020-07-28 华至云链科技(苏州)有限公司 一种基于动态载荷的并行计算生产排程系统及方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104657214A (zh) * 2015-03-13 2015-05-27 华存数据信息技术有限公司 一种基于多队列和多优先级的大数据任务管理系统和方法
CN106095545A (zh) * 2016-06-01 2016-11-09 东软集团股份有限公司 任务调度方法及装置
CN107346263A (zh) * 2017-06-29 2017-11-14 上海联影医疗科技有限公司 任务执行方法、存储介质以及计算机设备
CN109814988A (zh) * 2017-11-22 2019-05-28 深圳竹云科技有限公司 任务处理方法及系统
CN109408215A (zh) * 2018-11-07 2019-03-01 郑州云海信息技术有限公司 一种计算节点的任务调度方法和装置
CN111352736A (zh) * 2020-02-28 2020-06-30 中国平安人寿保险股份有限公司 大数据资源的调度方法、装置、服务器及存储介质
CN111461525A (zh) * 2020-03-30 2020-07-28 华至云链科技(苏州)有限公司 一种基于动态载荷的并行计算生产排程系统及方法

Also Published As

Publication number Publication date
CN112114973A (zh) 2020-12-22

Similar Documents

Publication Publication Date Title
CN112114973B (zh) 一种数据处理方法及装置
Bao et al. Online job scheduling in distributed machine learning clusters
US9141430B2 (en) Scheduling mapreduce job sets
CN110442451B (zh) 一种面向深度学习的多类型gpu集群资源管理调度方法和系统
Gu et al. Liquid: Intelligent resource estimation and network-efficient scheduling for deep learning jobs on distributed GPU clusters
US8914805B2 (en) Rescheduling workload in a hybrid computing environment
US8739171B2 (en) High-throughput-computing in a hybrid computing environment
US8595732B2 (en) Reducing the response time of flexible highly data parallel task by assigning task sets using dynamic combined longest processing time scheme
US9542223B2 (en) Scheduling jobs in a cluster by constructing multiple subclusters based on entry and exit rules
RU2538920C2 (ru) Способ распределения задач сервером вычислительной системы, машиночитаемый носитель информации и система для реализации способа
US8683470B2 (en) Scalable thread locking with customizable spinning
US20180075098A1 (en) Optimizing pipelining result sets with fault tolerance in distributed query execution
CN114741207A (zh) 一种基于多维度组合并行的gpu资源调度方法和系统
US10514949B1 (en) Efficient data processing in a serverless environment
CN113946431B (zh) 一种资源调度方法、系统、介质及计算设备
CN112162841A (zh) 面向大数据处理的分布式调度系统、方法及存储介质
US8028291B2 (en) Method and computer program product for job selection and resource allocation of a massively parallel processor
US20210390405A1 (en) Microservice-based training systems in heterogeneous graphic processor unit (gpu) cluster and operating method thereof
CN110851245A (zh) 一种分布式异步任务调度方法及电子设备
CN107391262B (zh) 一种作业调度方法及装置
CN116010020A (zh) 容器池管理
Banicescu et al. Towards the robustness of dynamic loop scheduling on large-scale heterogeneous distributed systems
US11817091B1 (en) Fault-tolerance techniques for dialog-driven applications
CN110008002B (zh) 基于平稳分布概率的作业调度方法、装置、终端和介质
CN113535346B (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