一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

任务分配方法及装置、任务处理系统与流程

2021-11-03 11:46:00 来源:中国专利 TAG:


1.本技术涉及通信技术领域,特别涉及一种任务分配方法及装置、任务处理系统。


背景技术:

2.随着通信技术的发展,具有较强处理能力的任务处理系统得到了广泛的应用。任务处理系统通常包括:调度器和多个节点,调度器用于将待处理的任务分配至任务处理系统中的节点,以便于节点处理任务。
3.调度器通常根据各个节点的负载为节点分配任务。比如,调度器在分配任务时,可以统计各个节点的负载,以确定该多个节点中负载较小的节点,之后再将任务分配给该节点。
4.但是,任务处理系统中的节点在处理任务的过程中往往会出现故障,导致节点无法有效地处理任务,影响任务的处理效率。


技术实现要素:

5.本技术提供了一种任务分配方法及装置、任务处理系统,可以解决任务处理系统处理任务的效率较低的问题,所述技术方案如下:
6.第一方面,提供了一种任务分配方法,所述方法包括:首先确定待分配任务所属的任务类型为第一类型,并根据该第一类型确定第一节点,之后将待分配任务分配给所述第一节点。其中,所述第一节点处理所述第一类型的任务的故障概率小于或等于第一阈值。
7.由于该第一节点处理第一类型的任务的故障概率小于或等于第一阈值,因此,第一节点在处理该第一类型的任务时较不容易故障,从而能够提升该待分配任务被正常处理的概率,提升该待分配任务的处理效率。并且,本技术提供的任务分配方法无需在每个节点上设置故障检测组件,因此,避免了在每个节点上安装故障检测组件导致安装成本较高且效率较低的问题。另外,本技术提供的任务分配方法无需借助人工,能够实现自动化。
8.可选地,所述根据所述第一类型确定第一节点,包括:根据所述第一类型确定节点集合,所述节点集合包括:处理所述第一类型的任务的故障概率大于所述第一阈值的节点;确定位于所述节点集合之外的所述第一节点。当然,任务分配装置也可以不采用先确定节点集合再确定第一节点的方式确定第一节点。比如,任务分配装置直接根据该第一类型以及第一节点需要满足的条件,在连接的多个节点中筛选上述第一节点。示例地,任务分配装置可以先在多个节点中筛选出处理第一类型的任务的故障概率小于或等于第一阈值的至少一个节点,再在该至少一个节点中筛选上述第一节点。
9.可选地,任务分配装置在节点集合之外的节点中确定第一节点时,或者,在处理第一类型的任务的故障概率小于或等于第一阈值的至少一个节点中确定第一节点时,可以根据节点的负载筛选该第一节点。示例地,任务分配装置可以将负载最低(或者次低)的节点确定为第一节点。
10.可选地,所述确定待分配任务所属的任务类型为第一类型,包括:根据所述待分配
任务的特征和任务分类模型确定所述待分配任务所属的任务类型为所述第一类型。示例地,任务分配装置可以首先获取待分配任务的特征,之后,再将该待分配任务的特征输入任务分类模型,得到该任务分类模型输出的第一类型。其中,该任务分类模型用于根据输入的任务的特征,输出该任务在上述多种任务类型中所属的类型。
11.可选地,在所述确定待分配任务所属的任务类型为第一类型之前,所述方法还包括:获取所述第一类型的任务的特征以及第二类型的任务的特征;采用聚类算法对所述第一类型的任务的特征和第二类型的任务的特征进行处理,得到所述第一类型的任务所属的任务类型为所述第一类型,以及所述第二类型的任务所属的任务类型为所述第二类型;根据所述第一类型、所述第一类型的任务的特征、所述第二类型以及所述第二类型的任务的特征,对初始模型进行训练,得到所述任务分类模型。可以看出,任务分配装置能够获取多个任务中每个任务的特征,并采用聚类算法对该多个任务的特征进行处理,得到每个任务的类型;最后,任务分配装置还需要根据该多个任务的特征和类型对初始模型进行训练,得到上述任务分类模型。
12.可选地,在所述采用聚类算法对所述第一类型的任务的特征和第二类型的任务的特征进行处理之前,所述方法还包括:对所述第一类型的任务的特征和第二类型的任务的特征进行归一化处理;在所述根据所述待分配任务的特征和任务分类模型确定所述第一类型之前,所述方法还包括:对所述待分配任务的特征进行归一化处理。任务分配装置对特征进行归一化处理,能够提升采用聚类算法对多个特征进行处理的效率。
13.可选地,所述方法还包括:获取若干已处理的第一类型的任务的故障信息,其中,所述第一类型为所述第一类型的任务所属的任务类型,任务的故障信息用于指示:所述任务被分配至的节点,以及所述节点在处理所述任务时是否故障;根据所述第一类型的任务的故障信息和所述第一类型,确定所述第一类型的任务被分配至的节点处理所述第一类型的任务的故障概率。
14.可选地,在根据所述第一类型确定第一节点之前,所述方法还包括:确定总故障概率小于或等于第二阈值的至少一个备选节点;其中,所述总故障概率用于指示:所述节点处理多种任务类型的任务的总故障情况;根据所述第一类型确定第一节点,包括:根据所述第一类型,在所述至少一个备选节点中确定所述第一节点。可以看出,任务分配装置确定出的第一节点不仅处理第一类型的任务的故障概率较低,并且,第一节点的总故障概率也较低。
15.可选地,所述第一阈值等于所述第二阈值。可选地,任务分配装置在分配多个任务时可以采用相同的第一阈值以及相同的第二阈值。可选地,任务分配装置在分配多个任务时也可以采用不同的第一阈值以及不同的第二阈值。此时,任务分配装置在确定上述第一节点之前,可以根据待分配任务确定上述第一阈值和第二阈值中的至少一个阈值。可选地,对于相对较为重要的任务可以采用相对较高的阈值,对于相对较为不重要的任务可以采用相对较低的阈值。示例地,任务分配装置可以采用预设算法对待分配任务的特征进行计算得到该至少一个阈值;或者,任务分配装置可以根据多种任务类型与多个阈值组的对应关系,确定待分配任务所属的任务类型(第一类型)对应的阈值组(包括该至少一个阈值)。
16.可选地,所述方法还包括:获取若干已处理的第一类型的任务的故障信息以及若干已处理的第二类型的任务的故障信息,其中,任务的故障信息用于指示:所述任务被分配至的节点,以及所述节点在处理所述任务时是否故障;根据所述第一类型的任务的故障信
息以及所述第二类型的任务的故障信息,确定节点的总故障概率。
17.可选地,所述任务分配装置用于根据所述待分配任务的处理请求分配所述待分配任务,所述处理请求包括:处理所述待分配任务的节点满足的至少一个条件,所述确定位于所述节点集合之外的所述第一节点,包括:在所述至少一个条件中添加位于所述节点集合之外的条件;根据所述待分配任务的处理请求,确定位于所述节点集合之外的所述第一节点。
18.第二方面,提供了一种任务分配装置,包括用于执行第一方面提供的任一种任务分配方法的各个模块。
19.第三方面,提供了一种计算机装置,所述计算机装置包括:处理器和存储器,所述存储器中存储有程序,所述处理器用于调用所述存储器中存储的程序,以使得所述计算机装置执行如第一方面提供的任一种任务分配方法。
20.第四方面,提供了一种计算机存储介质,所述存储介质内存储有计算机程序,当所述计算机程序在计算机装置上运行时,使所述计算机装置执行如第一方面提供的任一种任务分配方法。
21.第五方面,提供了一种包含指令的计算机程序产品,当计算机程序产品在计算机装置上运行时,使得计算机装置执行第一方面提供的任一种任务分配方法。
22.上述第二方面至第五方面的有益效果可以参考上述第一方面中相应描述中的有益效果,本技术在此不做赘述。
附图说明
23.图1为本技术实施例提供的一种任务处理系统的结构示意图;
24.图2为本技术实施例提供的另一种任务处理系统的结构示意图;
25.图3为本技术实施例提供的一种任务分配装置的结构示意图;
26.图4为本技术实施例提供的一种任务分配方法的流程图;
27.图5为本技术实施例提供的一种分配任务的示意图;
28.图6为本技术实施例提供的另一种任务分配装置的结构示意图。
具体实施方式
29.为使本技术的原理和技术方案更加清楚,下面将结合附图对本技术实施方式作进一步地详细描述。
30.图1为本技术实施例提供的一种任务处理系统的结构示意图。如图1所示,该任务处理系统可以包括:调度器01和多个节点(如图1中的节点1至8)。图1中示出了8个节点,可选地,该任务处理系统中节点的个数也可以不是8,比如可以是10、12、21等。节点可以为服务器、计算机等具有处理任务的功能的设备。
31.调度器01与每个节点连接,调度器01用于接收任务处理系统外的设备(如用户设备,图1中未示出)发送的任务处理请求,并根据该任务处理请求确定待分配任务,以及在上述多个节点中分配该待分配任务。节点在分配到任务后,会处理该任务,并将该任务的处理结果反馈至调度器01,以便于调度器01将该处理结果反馈至任务处理系统外的设备。
32.其中,本技术实施例中提到的任务也可以称为“作业”,任务可以是数据处理任务、
数据查询任务等任一种与数据相关的任务。可选地,该任务处理系统可以是高性能计算(high performance computing,hpc)系统、数据中心系统、公/私有云系统等。hpc系统用于提供高性能计算服务,hpc系统需要处理的任务与数据计算服务相关。数据中心系统和公/私有云系统均用于提供数据的存储和读取等服务,数据中心系统和公/私有云系统需要处理的任务与数据的计算、存储和读取等服务相关。
33.但是,任务处理系统中的节点在处理任务的过程中往往会出现故障,比如,节点中的组件(如存储器或处理器等)无法正常使用,或者节点中的组件互相不兼容(比如处理器和存储器不兼容等)。当节点在处理任务的过程中出现故障时,节点无法有效地对任务进行处理,从而影响整个任务处理系统处理任务的效率。
34.相关技术中,为了提升任务处理系统处理任务的效率,通常需要检测任务处理系统中故障的节点,并通过人工的方式对故障的节点进行移除,之后再在剩余的未故障的节点中分配任务,以降低节点在处理任务时故障的概率。相关技术中存在两种检测节点是否故障的方式,一种是基于人工经验进行人工检测,另一种需要在每个节点上安装故障检测组件,并通过故障检测组件对节点进行故障检测。但是,基于人工经验进行的故障检测准确度较低,且检测效率较低;基于故障检测组件的检测则需要在每个节点上安装故障检测组件,故障检测组件的安装成本较高且效率较低。并且,相关技术中,还需要通过人工的方式对故障的节点进行移除,该方式需要借助人工,难以实现自动化。可见,相关技术中为降低节点在处理任务时故障的概率所采用的方法存在效率低、成本高以及难以实现自动化等问题。
35.基于相关技术中存在的各种问题,本技术实施例提供了一种任务处理系统。示例地,图2为本技术实施例提供的另一种任务处理系统的结构示意图,请参考图2,该任务处理系统包括:任务分配装置02和图1中的多个节点,并且任务分配装置02与每个节点连接。该任务处理系统可以是hpc系统、数据中心系统、公/私有云系统等。图2中的节点可以参考图1中的节点,本技术实施例在此不做赘述。
36.任务分配装置02可以是服务器、计算机等任一种计算装置。可选地,图3为本技术实施例提供的一种任务分配装置02的结构示意图,如图3所示,该任务分配装置02可以包括:处理器021、网络接口022(或者其他通信接口)、存储器023和通信总线024(用于实现这些装置之间的连接通信)。处理器021用于执行存储器023中存储的可执行模块,例如计算机程序。存储器023可能包含高速随机存取存储器(ram:random access memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过网络接口022(可以是有线或者无线)实现该任务分配装置与其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。
37.类似图1中的调度器01,图2中的任务分配装置02也用于接收任务处理系统外的设备发送的任务处理请求,并根据该任务处理请求确定待分配任务,以及在上述多个节点中分配该待分配任务。图2中的任务分配装置02具有图1中调度器01的功能,在此基础上,该任务分配装置02还能够通过本技术实施例提供的任务分配方法,降低节点在处理任务过程中的故障概率。并且,无需借助人工,能够实现自动化。
38.以下将结合本技术实施例提供的任务分配方法,对本技术实施例提供的任务分配装置的功能进行讲解。
39.示例地,图4为本技术实施例提供的一种任务分配方法的流程图,该任务分配方法可以用于本技术实施例提供的任务处理系统(如图2所示的任务处理系统)中的任务分配装置。如图4所示,该任务分配方法包括:
40.s301、确定多个节点中每个节点的总故障概率。
41.该多个节点均为任务分配装置连接的节点,如图2中的节点1至8。任务分配装置可以在该多个节点中进行待分配任务的分配。
42.节点的总故障概率用于指示:该节点处理多种任务类型的任务的总故障情况。示例地,该总故障概率可以是该节点处理该多种任务类型的任务的故障概率的平均值或中位数等。该多种任务类型可以是基于任一种分类标准对多个任务进行分类得到,该分类标准可以是:任务对节点的计算能力的需求,或者任务对节点的存储能力的需求等,本技术实施例对此不作限定。
43.任务分配装置在分配待分配任务前,需要首先确定上述多个节点中每个节点的总故障概率,以便于基于该总故障概率进行后续的任务分配流程。
44.s302、判断多个节点是否包括总故障概率小于或等于第二阈值的至少一个备选节点。在多个节点包括至少一个备选节点时,执行s303;在多个节点不包括备选节点时,执行s308。
45.任务分配装置在确定连接的每个节点的总故障概率之后,可以将每个节点的总故障概率与第二阈值进行比较,以确定该总故障概率是否小于或等于第二阈值,进而确定该节点是否为备选节点。示例地,该第二阈值可以是任一概率值,如80%、90%等,本技术实施例对此不作限定。
46.需要说明的是,节点的总故障概率用于指示:该节点处理多种任务类型的任务的总故障情况。当某一节点的总故障概率大于第二阈值时,说明该节点处理该多种任务类型的任务时的总故障概率较大,该节点不能作为处理待处理任务的备选节点。当某一节点的总故障概率小于或等于第二阈值时,说明该节点处理上述多种任务类型的任务时的总故障概率较小,该节点可以作为处理待处理任务的备选节点。
47.在将连接的多个节点的总故障概率均与第二阈值进行比较之后,任务分配装置需要确定该所有节点中是否存在总故障概率较小(总故障概率小于或等于第二阈值)的至少一个备选节点。一方面,在该多个节点中存在总故障概率较小的至少一个备选节点时,表明该多个节点中存在处理该多种任务类型的任务的总故障概率较小的节点,此时,任务分配装置可以执行s303,以在这些备选节点进一步进行任务的分配。另一方面,在该多个节点的总故障概率均较大(总故障概率大于第二阈值)时,表明将任务分配至该多个节点中的任一节点都会出现节点无法有效处理任务的情况发生,此时,任务分配装置可以执行s308,以禁止分配该待分配任务。
48.示例地,假设任务分配装置连接有如图2所示的8个节点,且这8个节点的总故障概率如表1所示。若上述第二阈值为80%。任务分配装置经过判断可知,节点1、2、3、4、5和6的总故障概率均小于或等于第二阈值,但节点7和8的总故障概率大于第二阈值。此时,任务分配装置可以确定这8个节点中存在总故障概率小于或等于第二阈值的6个备选节点(节点1至6)。
49.表1
50.节点12345678总故障概率10%15%10%15%70%10%85%90%
51.s303、确定待分配任务所属的任务类型为第一类型。
52.任务分配装置在确定上述多个节点中存在至少一个备选节点时,可以首先确定待分配任务所属的任务类型为第一类型,之后再基于该第一类型进行待分配任务的分配。
53.在本技术实施例中,任务分配装置可以通过任一种方式确定上述第一类型。比如,任务分配装置可以借助任务分类模型确定该待分配任务的第一类型。此时,在s303中,任务分配装置可以根据待分配任务的特征和任务分类模型确定第一类型。示例地,任务分配装置可以首先获取待分配任务的特征,之后,再将该待分配任务的特征输入任务分类模型,得到该任务分类模型输出的第一类型。其中,该任务分类模型用于根据输入的任务的特征,输出该任务在上述多种任务类型中所属的类型。当然,任务分配装置也可以不借助该任务分类模型确定上述第一类型,比如,任务分配装置中可以存储有任务的标识与类型的对应关系,在s303中,任务分配装置可以根据待分配任务的标识以及该对应关系,确定上述待分配任务的标识所对应的第一类型。
54.s304、根据第一类型确定节点集合,该节点集合包括:处理第一类型的任务的故障概率大于第一阈值的备选节点,以及总故障概率大于第二阈值的非备选节点。
55.示例地,任务分配装置可以首先确定调度器连接的上述至少一个备选节点中,每个备选节点处理第一类型的任务时的故障概率。之后,任务分配装置可以将每个备选节点处理第一类型的任务时的故障概率与第一阈值进行比较,以确定备选节点处理第一类型的任务时的故障概率是否大于第一阈值。该第一阈值也可以是任一概率值,比如85%、70%、90%等。第一阈值可以与第二阈值相同或不同,本技术实施例对此不作限定。之后,任务分配装置可以确定节点集合包括:处理第一类型的任务的故障概率大于第一阈值的备选节点,以及总故障概率大于第二阈值的非备选节点。
56.需要说明的是,当某一节点处理第一类型的任务的故障概率大于第一阈值时,表明该节点处理第一类型的任务的故障概率较大;当某一节点处理第一类型的任务的故障概率小于或等于第一阈值时,表明该节点处理第一类型的任务的故障概率较小;当某一节点的总故障概率大于第二阈值时,表明该节点处理多种任务类型的任务的总故障概率较大。可以看出,任务分配装置确定出的节点集合包括:多个节点中处理该待分配任务时较容易出现故障的节点。
57.示例地,仍然以表1所示的8个节点为例,假设上述多种任务类型包括表2所示的4种类型,且每个节点处理每种任务类型的任务的故障概率如表2所示。若第一类型为任务类型1,第一阈值为80%,则任务分配装置经过判断可知,总故障概率小于或等于第二阈值的6个备选节点(节点1至6)中,节点1、2、3、4和6处理第一类型的任务的故障概率均小于或等于第一阈值,但节点5处理第一类型的任务的故障概率大于第一阈值。所以,任务分配装置可以确定节点集合包括:节点5、节点7和节点8,也即包括除节点1、2、3、4和6之外的节点。其中,节点5、7和8处理该待分配任务时出现故障的概率较大,节点1、2、3、4和6处理该待分配任务时出现故障的概率较小。
58.表2
[0059][0060][0061]
s305、判断多个节点是否包括位于节点集合之外的至少一个目标节点。在多个节点包括至少一个目标节点时,执行s306;在多个节点不包括目标节点时,执行s308。
[0062]
在确定节点集合之后,任务分配装置需要判断连接的节点中是否存在位于该节点集合之外的节点(称为目标节点)。当任务分配装置连接有至少一个目标节点时,任务分配装置可以执行s306以在该至少一个目标节点中进行待分配任务的分配。但是,当任务分配装置并未连接有目标节点时,表明任务分配装置连接的所有节点在执行待分配任务时故障的概率均较大,将任务分配至任务分配装置连接的任一节点都会出现节点无法有效处理任务的情况发生,此时,任务分配装置可以执行s308,以禁止分配该待分配任务。
[0063]
s306、确定至少一个目标节点中的第一节点。
[0064]
s307、将待分配任务分配给第一节点。
[0065]
在确定至少一个目标节点之后,任务分配装置便可以在该至少一个目标节点中选择用于处理待分配任务的第一节点,并将该待分配任务分配给第一节点。
[0066]
由于节点集合包括:任务分配装置连接的节点中处理第一类型(待分配任务所属的任务类型)的任务时出现故障的概率较大的节点,且该至少一个目标节点为节点集合之外的节点,因此该至少一个目标节点处理第一类型的任务时出现故障的概率均较小,从该至少一个目标节点中确定出的第一节点处理第一类型的任务的故障概率小于或等于上述第一阈值。并且,该第一节点的总故障概率较小,该第一节点处理多种任务类型的任务较不容易故障。任务分配装置将待分配任务分配给第一节点后,第一节点能够有效处理该待分配任务,提升整个任务处理系统处理待分配任务的效率。
[0067]
任务分配装置可以采用任一种方式确定至少一个目标节点中的第一节点。可选地,任务分配装置可以通过在待分配任务的处理请求中的至少一个条件中添加“位于该待分配任务对应的节点集合之外”的条件,并根据待分配任务的处理请求,在该至少一个目标节点中确定第一节点。
[0068]
需要说明的是,当任务处理系统之外的设备(比如称为用户设备)需要采用任务处理系统执行某一任务时,该用户设备向任务分配装置发送该任务的处理请求。该处理请求包括:处理该任务的节点需要满足的至少一个条件,比如,该节点需要具有至少两个处理器,或者该节点中的存储器上存储空间大于100gb(吉字节)等。任务分配装置在接收到任务的处理请求后,可以基于该处理请求中的上述至少一个条件向节点分配任务,比如,任务分配装置将该任务分配至满足该至少一个条件的节点。在本技术实施例中,任务分配装置可以在待分配任务的处理请求中的至少一个条件中,添加“位于节点集合之外”的条件,此时,处理该任务的节点需要满足的条件还包括:位于该节点集合之外。任务分配装置在根据待分配任务的处理请求分配待分配任务时,可以根据该处理请求中的条件,在连接的多个节点中位于节点集合之外的节点(比如上述至少一个目标节点)中确定第一节点,并将该待分
配任务分配给第一节点。
[0069]
示例地,假设待分配任务称为job1,待分配任务的处理请求包括:submit job1

node-type=”linux
”–
cpus=10

mem=100gb。其中,submit job1表示:提交job1,node-type=”linux”表示:节点的类型为linux,cpus=10表示:节点中处理器的个数至少为10,mem=100gb表示:节点的存储器的存储空间至少为100gb。因此,该处理请求中用于处理job1的节点需要满足的条件包括:节点的类型为linux,节点中处理器的个数至少为10,以及节点的存储器的存储空间至少为100gb。若上述节点集合包括:节点5、7和8,则在s306中任务分配装置可以在该处理请求中增加:exclude-nodes=”node5
””
node7
””
node8”,从而得到更新后的处理请求:submit job1

node-type=”linux
”–
cpus=10

mem=100gb

exclude-nodes=”node5
””
node7
””
node8”。其中,exclude-nodes=”node5
””
node7
””
node8”表示:排除节点5、7和8(相当于节点位于节点5、7和8组成的节点集合之外)。任务分配装置在根据该处理请求分配待分配任务时,可以根据exclude-nodes=”node5
””
node7
””
node8”,在节点1至8中除节点5、7和8之外的至少一个目标节点(包括节点1、2、3、4、6)中确定上述第一节点,并在s307中将待分配任务分配至第一节点。
[0070]
需要说明的是,本技术实施例中以待分配任务的处理请求包括:submit job1

node-type=”linux
”–
cpus=10

mem=100gb为例,当然,该处理请求的形式或内容并不限于此,本技术实施例对此不作限定。
[0071]
可选地,任务分配装置在该至少一个目标节点中确定用于处理待分配任务的第一节点时,可以根据节点的负载确定第一节点。示例地,任务分配装置可以将该至少一个目标节点中负载最低(或者次低)的节点确定为第一节点。
[0072]
可选地,任务分配装置在接收到用户设备发送的任务的处理请求后,以及在将该任务分配至节点之前,还可以计算各个处理请求的优先级,并按照处理请求的优先级将处理请求加入请求队列,之后才依次根据请求队列中的处理请求进行任务的分配。上述s306中更改处理请求的过程可以在任务分配装置根据处理请求进行任务的分配之前即可,比如,更改处理请求的过程在计算处理请求的优先级时,或者,更改处理请求的过程在计算处理请求的优先级之前或之后,或者,更改处理请求的过程可以在处理请求加入请求队列时,或者,更改处理请求的过程可以在处理请求加入请求队列之前或之后等,本技术实施例对此不作限定。
[0073]
s308、禁止分配待分配任务。
[0074]
示例地,任务分配装置可以将该待分配任务的处理请求删除,从而实现禁止根据该处理请求分配该待分配任务的目的。
[0075]
本技术实施例中以s308中任务分配装置禁止分配待分配任务为例,可选地,任务分配装置在s308中也可以延迟分配该待分配任务。比如,任务分配装置将该待分配任务的处理请求的优先级降低,以使该处理请求排在请求队列中较后的位置,从而延迟分配该待分配任务。
[0076]
本技术实施例提供的方法实施例操作的先后顺序能够进行适当调整,操作也能够根据情况进行响应增减,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本技术的保护范围之内,因此不再赘述。比如,上述s302和s303的先后顺序可以颠倒。又比如,该任务分配方法也可以不包括上述s301和s302,此
时,s304中确定出的节点集合包括:上述多个节点中处理第一类型的任务的故障概率大于第一阈值的节点。
[0077]
另外,上述s304、s305和s306相当于任务分配装置根据第一类型确定第一节点,可选地,任务分配装置也可以不采用s304、s305和s306中的方式确定第一节点。比如,任务分配装置直接根据该第一类型以及第一节点需要满足的条件,在多个节点中筛选上述第一节点。示例地,任务分配装置可以先根据该第一类型以及第一节点需要满足的条件,在多个节点中筛选出处理第一类型的任务的故障概率小于或等于第一阈值的至少一个节点,再在该至少一个节点中筛选上述第一节点。
[0078]
任务分配装置在分配多个任务时可以采用相同的第一阈值以及相同的第二阈值。可选地,任务分配装置在分配多个任务时也可以采用不同的第一阈值以及不同的第二阈值。此时,任务分配装置在确定上述第一节点之前,可以根据待分配任务确定上述第一阈值和第二阈值中的至少一个阈值。对于相对较重要的任务(如优先级较高的任务)可以采用相对较高的阈值,对于相对较不重要的任务(如优先级较低的任务)可以采用相对较低的阈值。示例地,任务分配装置可以采用预设算法对待分配任务的特征进行计算得到该至少一个阈值;或者,任务分配装置可以根据多种任务类型与多个阈值组的对应关系,确定待分配任务所属的任务类型(第一类型)对应的阈值组(包括该至少一个阈值)。
[0079]
以上对本技术实施例提供的任务分配方法进行了介绍,下面将对该任务分配方法进行以下几点补充说明。
[0080]
(1)上述实施例中在s303中使用到了任务分类模型,需要说明的是,该任务分类模型可以是工作人员输入该任务分配装置的模型,也可以是由任务分配装置自行学习得到的模型,本技术实施例对此不作限定。
[0081]
当该任务分类模型是任务分配装置自行学习得到的模型时,在s301之前,任务分配装置还需要获取多个任务中每个任务的特征,并采用聚类算法对该多个任务的特征进行处理,得到每个任务的类型;最后,任务分配装置还需要根据该多个任务的特征和类型对初始模型进行训练,得到上述任务分类模型。示例地,该多个任务可以包括多种任务类型的任务,比如第一类型的任务和第二类型的任务。任务分配装置采用聚类算法对第一类型的任务的特征和第二类型的任务的特征进行处理,能够得到第一类型的任务所属的任务类型为第一类型,以及第二类型的任务所属的任务类型为第二类型。可选地,任务分配装置采用聚类算法对该多个任务的特征进行处理的过程中,可以分别计算任务的特征间的相似度,并将特征间的相似度较高(比如高于相似度阈值)的任务分为同一类,从而得到该多个任务所属的多种任务类型(比如上述第一类型和第二类型)。
[0082]
可选地,上述多个任务的特征可以是工作人员输入任务分配装置的特征,也可以是任务分配装置在获取到该多个任务的信息之后,根据每个任务的信息得到的特征。其中,任务分配装置获取的每个任务的信息可以包含该任务相关的各种信息,比如:任务名称、任务的发起者、处理任务的节点、节点在处理任务时是否故障、任务对应的应用、任务的处理请求中节点需要满足的至少一个条件、以及任务的处理结果等信息。
[0083]
由于任务分类模型是根据该多个任务的特征和类型对初始模型进行训练得到的模型,因此,该任务分类模型可以识别的任务类型可以包括:该多个任务的类型。相应地,上述s303中的多种任务类型也即该多个任务的类型。
[0084]
可选地,任务分配装置在采用聚类算法对多个任务的特征进行处理之前,还可以对该多个任务的特征进行归一化处理,以提升采用聚类算法对多个任务的特征进行处理的效率。相应地,任务分配装置在s303中将待分配任务的特征输入任务分类模型之前,也可以对待分配任务的特征进行归一化处理。其中,归一化处理是一种无量纲处理手段,使数值的绝对值变成某种相对值,归一化处理能够简化计算,是一种缩小量值的有效办法。任务分配装置在对多个特征进行归一化处理的过程中,可以按照一定的规则,将多个特征的绝对值均调整到某一区间内。
[0085]
(2)上述实施例中在s304中需要确定每个节点处理第一类型的任务的故障概率,可选地,在s304之前,任务分配装置还可以获取多种任务类型的若干已处理的任务的故障信息,并根据该多种任务类型的任务的故障信息和类型,确定每个节点处理每种任务类型的任务的故障概率。其中,任务的故障信息可以用于指示:任务被分配至的节点,以及节点在处理任务时是否故障。示例地,该多种任务类型的任务可以包括:上述第一类型的任务和上述第二类型的任务。任务分配装置可以根据第一类型的任务的故障信息和任务类型,确定第一类型的任务被分配至的每个节点处理第一类型的任务的故障概率。任务分配装置还可以根据第二类型的任务的故障信息和任务类型,确定第二类型的任务被分配至的每个节点处理第二类型的任务的故障概率。
[0086]
可选地,该多个任务的故障信息和类型也可以是由工作人员输入任务分配装置的,也可以是任务分配装置根据得到上述任务分类模型的过程中的数据(包括上述多种任务类型,以及上述多种任务类型的任务的信息(包括故障信息))得到的,本技术实施例对此不作限定。
[0087]
(3)上述实施例中在s302中需要确定任务分配装置连接的每个节点的总故障概率,可选地,在s302之前,任务分配装置还可以获取多种任务类型的若干已处理的任务的故障信息,并根据该多种任务类型的任务的故障信息,确定每个节点的总故障概率。
[0088]
可选地,该多种任务类型的任务的故障信息也可以是由工作人员输入任务分配装置的,也可以是任务分配装置根据得到上述任务分类模型的过程中的数据(如上述多种任务类型的任务的信息(包括故障信息))得到的,本技术实施例对此不作限定。
[0089]
上述三点补充说明中所涉及的多种任务类型的任务可以是相同的,此时,任务分配装置可以根据该多种任务类型的任务的信息分别执行上述三点补充说明中的操作,从而得到任务分类模型,每个节点处理每种任务类型的任务的故障概率,以及每个节点的总故障概率。
[0090]
进一步地,任务分配装置在得到任务分类模型,每个节点处理每种任务类型的任务的故障概率,以及每个节点的总故障概率之后,还可以重复执行这三点补充说明中的操作,以对任务分类模型,每个节点处理每种任务类型的任务的故障概率,以及每个节点的总故障概率进行更新。
[0091]
以下将通过一个示例对本技术实施例提供的任务分配方法的效果进行说明。
[0092]
示例地,请参考图5,假设节点1至8的总故障概率如表1所示,若第二阈值为80%,则任务分配装置可以首先确定节点1至8中存在6个备选节点(节点1至6)。之后,任务分配装置可以确定待分配任务所属的任务类型为第一类型,并根据该第一类型确定节点集合。假设节点1至8处理任务类型1的任务的故障概率如表2所示,且第一阈值为80%,则任务分配
装置确定的节点集合可以包括:6个备选节点中的节点5,以及非备选节点7和8。在确定节点集合之后,由于节点1至8中存在位于节点集合之外的5个目标节点(节点1、2、3、4和6),因此,任务分配装置可以在这5个目标节点中确定第一节点(如图5中的节点1),并将待分配任务分配至第一节点(节点1)。
[0093]
由于节点集合包括:处理第一类型的任务的故障概率大于第一阈值的节点,以及总故障概率大于第二阈值的节点,因此,节点集合之外的5个目标节点(节点1、2、3、4和6)处理第一类型的任务的故障概率小于或等于第一阈值,且总故障概率小于或等于第二阈值。任务分配装置将待分配任务分配给这5个目标节点中的第一节点(节点1)后,第一节点处理该第一类型的待分配任务时故障的概率较小,从而能够提升待分配任务被有效处理的概率,提升任务处理系统的任务处理效率。
[0094]
综上所述,本技术实施例提供的任务分配方法中,任务分配装置能够根据待分配任务的第一类型,确定用于处理待分配任务的第一节点,并将该待分配任务分配至第一节点。由于该第一节点处理第一类型的任务的故障概率小于或等于第一阈值,因此,第一节点在处理该第一类型的任务时较不容易故障,从而能够提升该待分配任务被正常处理的概率,提升该待分配任务的处理效率。
[0095]
并且,本技术实施例提供的任务分配方法无需在每个节点上设置故障检测组件,因此,避免了在每个节点上安装故障检测组件导致安装成本较高且效率较低的问题。另外,本技术实施例提供的任务分配方法无需借助人工,能够实现自动化。
[0096]
上文中结合图1至图5,详细描述了本技术所提供的任务分配方法,下面将结合图6描述本技术所提供的任务分配装置。示例地,图6为本技术实施例提供的另一种任务分配装置的结构示意图,如图6所示,该任务分配装置包括:
[0097]
确定模块601,用于确定待分配任务所属的任务类型为第一类型,以及根据第一类型确定第一节点,其中,第一节点处理第一类型的任务的故障概率小于或等于第一阈值;确定模块601用于执行的操作可以参考上述s303,本技术实施例在此不做赘述。
[0098]
分配模块602,用于将待分配任务分配给第一节点。分配模块602用于执行的操作可以参考上述s307,本技术实施例在此不做赘述。
[0099]
综上所述,本技术实施例提供的任务分配装置中,确定模块能够根据待分配任务的第一类型,确定用于处理待分配任务的第一节点,分配模块能够将该待分配任务分配至第一节点。由于该第一节点处理第一类型的任务的故障概率小于或等于第一阈值,因此,第一节点在处理该第一类型的任务时较不容易故障,从而能够提升该待分配任务被正常处理的概率,提升该待分配任务的处理效率。
[0100]
上述任务分配装置还用于执行如图3所示的任务分配方法中的其他步骤。比如,确定模块601用于执行图3中的s301、s302、s304、s305、s306和s308。各个模块执行各个步骤的具体流程请见上文对图3的介绍,此处不再赘述。
[0101]
本技术实施例提供了一种计算机存储介质,所述存储介质内存储有计算机程序,所述计算机程序用于执行本技术提供的任务分配方法。
[0102]
本技术实施例提供了一种包含指令的计算机程序产品,当计算机程序产品在计算机装置上运行时,使得计算机装置执行本技术实施例提供的任一任务分配方法。
[0103]
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实
现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现,所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机的可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者包含一个或多个可用介质集成的服务器、数据中心等数据存储装置。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质,或者半导体介质(例如固态硬盘)等。
[0104]
在本技术中,术语“第一”和“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。术语“至少一个”指一个或多个,“多个”指两个或两个以上,除非另有明确的限定。
[0105]
本技术实施例提供的方法实施例和装置实施例等不同类型的实施例均可以相互参考,本技术实施例对此不做限定。
[0106]
在本技术提供的相应实施例中,应该理解到,所揭露的装置等可以通过其它的构成方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
[0107]
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元描述的部件可以是或者也可以不是物理单元,既可以位于一个地方,或者也可以分布到多个网络设备(例如终端设备)上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0108]
以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献