CN113821313A - 一种任务调度方法、装置及电子设备 - Google Patents

一种任务调度方法、装置及电子设备 Download PDF

Info

Publication number
CN113821313A
CN113821313A CN202011584137.8A CN202011584137A CN113821313A CN 113821313 A CN113821313 A CN 113821313A CN 202011584137 A CN202011584137 A CN 202011584137A CN 113821313 A CN113821313 A CN 113821313A
Authority
CN
China
Prior art keywords
task
node
success rate
learning model
sample
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.)
Pending
Application number
CN202011584137.8A
Other languages
English (en)
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.)
Jingdong Technology Holding Co Ltd
Original Assignee
Jingdong Technology Holding 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 Jingdong Technology Holding Co Ltd filed Critical Jingdong Technology Holding Co Ltd
Priority to CN202011584137.8A priority Critical patent/CN113821313A/zh
Publication of CN113821313A publication Critical patent/CN113821313A/zh
Pending legal-status Critical Current

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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种任务调度方法、装置及电子设备。该方法包括:获取任务;预测所述任务的成功率;响应于所述任务的成功率低于预设的成功率阈值,将所述任务发送至预设的第一节点,将所述任务对应的备份任务发送至第二节点,所述第二节点与所述第一节点不同。由此,本申请无须在任务执行较长的时长后才对任务是否失败的判定结果进行获取,通过预测分布式任务中每个子任务的成功率,极大地缩短了任务调度耗时,提高了任务调度过程中的效率和可靠性。进一步地,通过在创建任务时就创建相应的备份任务,提升了任务调动的成功率和性能,以及系统的健壮性。

Description

一种任务调度方法、装置及电子设备
技术领域
本申请涉及数据处理技术领域,尤其涉及一种任务调度方法、装置及电子设备。
背景技术
分布式任务调度系统以其资源共享性强、计算速度快、可靠性高、应用方便快捷等众多优点广受青睐,能够实现不同节点之间的远距离通信和数据传输,并能够统筹协调系统资源,对用户提交的作业任务进行分布式处理,为人与人之间的信息交流及各种计算作业任务的完成提供了很大便利。
目前,主流的分布式任务调度算法(如Hadoop MapReduceV2、Spark等开源集群计算系统),通常采用以下任务调度方法:于任一时刻获取预测任务完成时间与此刻为该任务启动一个备份任务的完成时间差值,并获取时间差值最大的任务,以在其它节点为该任务启动备份任务。
然而,由于数据的不确定性以及对于系统运行环境的要求,现有技术中的任务调度过程中往往存在耗时久、维度单一、可靠性低、健壮性差等问题。因此,如何缩短任务调度耗时、提高任务调度过程中的效率和可靠性、提升任务调度性能,已成为了重要的研究方向之一。
发明内容
本申请旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本申请的第一个目的在于提出一种任务调度方法,用于解决现有任务调度方法过程中存在的耗时久、维度单一、可靠性低、健壮性差的技术问题。
本发明的第二个目的在于提出一种任务调度装置。
本发明的第三个目的在于提出一种电子设备。
本发明的第四个目的在于提出一种计算机可读存储介质。
为了实现上述目的,本申请第一方面实施例提供了一种任务调度方法,所述方法包括以下步骤:获取任务;预测所述任务的成功率;响应于所述任务的成功率低于预设的成功率阈值,将所述任务发送至预设的第一节点,将所述任务对应的备份任务发送至第二节点,所述第二节点与所述第一节点不同。
另外,根据本申请上述实施例的任务调度方法还可以具有如下附加的技术特征:
根据本申请的一个实施例,还包括:响应于所述任务的成功率等于或者高于所述成功率阈值,将所述任务发送至所述第一节点。
根据本申请的一个实施例,还包括:将所述第一节点和第二节点中最先完成任务的节点的任务执行结果,确定为目标任务执行结果;将所述第一节点和第二节点中,除所述最先完成任务的节点之外的其他节点的任务执行结果删除。
根据本申请的一个实施例,所述将所述任务对应的备份任务发送至第二节点之前,还包括:计算所述成功率阈值和所述任务的成功率的比值;根据所述比值确定所述备份任务的数量。
根据本申请的一个实施例,所述根据所述比值确定所述备份任务的数量,包括:响应于所述比值小于或者等于预设的数量阈值,将所述比值确定为所述备份任务的数量;或者,响应于所述比值大于所述数量阈值,将所述数量阈值确定为所述备份任务的数量。
根据本申请的一个实施例,所述预测所述任务的成功率,包括:获取所述任务对应的数据特征和服务器资源特征;对所述数据特征和所述服务器资源特征进行特征加工处理;将特征加工处理后的所述数据特征和所述服务器资源特征输入至训练好的联邦学习模型中,得到所述任务的成功率。
根据本申请的一个实施例,还包括:获取样本任务对应的样本数据特征、样本服务器资源特征和样本任务执行结果;对所述样本数据特征和所述样本服务器资源特征进行特征加工处理;根据所述样本任务执行结果和特征加工处理后的所述样本数据特征和所述样本服务器资源特征,对待训练的联邦学习模型进行训练,得到候选联邦学习模型;根据所述候选联邦学习模型生成所述训练好的联邦学习模型。
根据本申请的一个实施例,所述根据所述候选联邦学习模型生成所述训练好的联邦学习模型,包括:将所述候选联邦学习模型中的加密梯度参数发送至服务器;接收服务器发送的聚合后的加密梯度参数,所述聚合后的加密梯度参数为所述服务器根据接收到的多个加密梯度参数聚合得到;根据所述聚合后的加密梯度参数更新所述候选联邦学习模型,得到所述训练好的联邦学习模型。
本申请第一方面实施例提供了任务调度方法,可以通过获取任务,并预测任务的成功率,然后响应于任务的成功率低于预设的成功率阈值,将任务发送至预设的第一节点,将任务对应的备份任务发送至第二节点,无须在任务执行较长的时长后才对任务是否失败的判定结果进行获取,通过预测分布式任务中每个子任务的成功率,极大地缩短了任务调度耗时,提高了任务调度过程中的效率和可靠性。进一步地,通过在创建任务时就创建相应的备份任务,提升了任务调动的成功率和性能,以及系统的健壮性。
为了实现上述目的,本申请第二方面实施例提供了一种任务调度装置,包括:获取模块,用于获取任务;预测模块,用于预测所述任务的成功率;第一响应模块,用于响应于所述任务的成功率低于预设的成功率阈值,将所述任务发送至预设的第一节点,将所述任务对应的备份任务发送至第二节点,所述第二节点与所述第一节点不同。
根据本申请的一个实施例,获取模块,用于获取任务;预测模块,用于预测所述任务的成功率;第一响应模块,用于响应于所述任务的成功率低于预设的成功率阈值,将所述任务发送至预设的第一节点,将所述任务对应的备份任务发送至第二节点,所述第二节点与所述第一节点不同。
根据本申请的一个实施例,还包括:第二响应模块,用于响应于所述任务的成功率等于或者高于所述成功率阈值,将所述任务发送至所述第一节点。
根据本申请的一个实施例,还包括:确定模块,用于将所述第一节点和第二节点中最先完成任务的节点的任务执行结果,确定为目标任务执行结果;删除模块,用于将所述第一节点和第二节点中,除所述最先完成任务的节点之外的其他节点的任务执行结果删除。
根据本申请的一个实施例,所述第一响应模块,还包括:计算子模块,用于计算所述成功率阈值和所述任务的成功率的比值;第一确定子模块,用于根据所述比值确定所述备份任务的数量。
根据本申请的一个实施例,所述第一确定子模块,包括:第一响应单元,用于响应于所述比值小于或者等于预设的数量阈值,将所述比值确定为所述备份任务的数量;或者,第二响应单元,用于响应于所述比值大于所述数量阈值,将所述数量阈值确定为所述备份任务的数量。
根据本申请的一个实施例,所述预测模块,包括:第一获取子模块,用于获取所述任务对应的数据特征和服务器资源特征;第一处理子模块,用于对所述数据特征和所述服务器资源特征进行特征加工处理;第二确定子模块,用于将特征加工处理后的所述数据特征和所述服务器资源特征输入至训练好的联邦学习模型中,得到所述任务的成功率。
根据本申请的一个实施例,还包括:第二获取子模块,用于获取样本任务对应的样本数据特征、样本服务器资源特征和样本任务执行结果;第二处理子模块,用于对所述样本数据特征和所述样本服务器资源特征进行特征加工处理;第三确定子模块,用于根据所述样本任务执行结果和特征加工处理后的所述样本数据特征和所述样本服务器资源特征,对待训练的联邦学习模型进行训练,得到候选联邦学习模型;生成子模块,用于根据所述候选联邦学习模型生成所述训练好的联邦学习模型。
根据本申请的一个实施例,所述生成子模块,包括:发送单元,用于将所述候选联邦学习模型中的加密梯度参数发送至服务器;接收单元,用于接收服务器发送的聚合后的加密梯度参数,所述聚合后的加密梯度参数为所述服务器根据接收到的多个加密梯度参数聚合得到;确定单元,用于根据所述聚合后的加密梯度参数更新所述候选联邦学习模型,得到所述训练好的联邦学习模型。
本申请第二方面实施例提供了任务调度装置,可以通过获取任务,并预测任务的成功率,然后响应于任务的成功率低于预设的成功率阈值,将任务发送至预设的第一节点,将任务对应的备份任务发送至第二节点,无须在任务执行较长的时长后才对任务是否失败的判定结果进行获取,通过预测分布式任务中每个子任务的成功率,极大地缩短了任务调度耗时,提高了任务调度过程中的效率和可靠性。进一步地,通过在创建任务时就创建相应的备份任务,提升了任务调动的成功率和性能,以及系统的健壮性。
为了实现上述目的,本申请第三方面实施例提供了一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时,实现如本申请第一方面实施例中任一项所述的任务调度方法。
为了实现上述目的,本申请第四方面实施例提供了一种计算机可读存储介质,该程序被处理器执行时实现如本申请第一方面实施例中任一项所述的任务调度方法。
附图说明
图1为本申请一个实施例公开的任务调度方法的流程示意图;
图2为本申请另一个实施例公开的任务调度方法的流程示意图;
图3为本申请另一个实施例公开的任务调度方法的流程示意图;
图4为本申请另一个实施例公开的任务调度方法的流程示意图;
图5为本申请另一个实施例公开的任务调度方法的流程示意图;
图6为本申请另一个实施例公开的任务调度方法的流程示意图;
图7为本申请一个任务调度全过程的流程示意图;
图8为本申请一个实施例公开的任务调度装置的结构示意图;
图9为本申请另一个实施例公开的任务调度装置的结构示意图;
图10为本申请另一个实施例公开的任务调度装置的结构示意图;
图11为本申请另一个实施例公开的任务调度装置的结构示意图;
图12为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为了更好的理解上述技术方案,下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
应当理解,本申请实施例中涉及的“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。
下面参照附图描述根据本申请实施例提出的一种任务调度方法、装置及电子设备。
图1为本申请一个实施例公开的一种任务调度方法的流程示意图。
如图1所示,本申请实施例提出的任务调度方法,具体包括以下步骤:
S101、获取任务。
其中,任务,可以为分布式任务中的任一子任务,例如新创建的分布式任务中的任一子任务。
其中,分布式任务(Distributed Task),可以由多个相互独立或者相互依赖的子任务组成,分布式任务的完成状态完全依赖于分布式任务中子任务的完成状态,只有在分布式任务的所有子任务完成时,分布式任务才算完成。
S102、预测任务的成功率。
需要说明的是,本申请中,对于预测任务成功率的具体方式不作限定,可以根据实际情况进行选取。可选地,可以通过预先训练好的预测模型,对任务的成功率进行预测。其中,预测模型可以根据实际情况进行选取,例如联邦学习(Federated Learning)模型等。
S103、响应于任务的成功率低于预设的成功率阈值,将任务发送至预设的第一节点,将任务对应的备份任务发送至第二节点,第二节点与第一节点不同。
本申请实施例中,可以将预测到的任务的成功率与预设的成功率阈值进行比较,并在识别成功率低于成功率阈值时,可以视该任务为失败,则可以响应于任务的成功率低于预设的成功率阈值,将任务发送至预设的第一节点,将任务对应的备份任务发送至第二节点,第二节点与第一节点不同。
其中,预设的成功率阈值可以根据实际情况进行设定。
由此,本申请提出的任务调度方法,可以通过获取任务,并预测任务的成功率,然后响应于任务的成功率低于预设的成功率阈值,将任务发送至预设的第一节点,将任务对应的备份任务发送至第二节点,无须在任务执行较长的时长后才对任务是否失败的判定结果进行获取,通过预测分布式任务中每个子任务的成功率,极大地缩短了任务调度耗时,提高了任务调度过程中的效率和可靠性。进一步地,通过在创建任务时就创建相应的备份任务,提升了任务调动的成功率和性能,以及系统的健壮性。
进一步地,本申请实施例中,在将预测到的任务的成功率与预设的成功率阈值进行比较后,若识别成功率等于或者高于成功率阈值,可以视该任务为成功,则可以将任务发送至第一节点。
由此,本申请提出的任务调度方法,可以通过响应于任务的成功率等于或者高于成功率阈值,将任务发送至第一节点,无需进行任务备份,实现了根据预测的成功率确定匹配的任务调度策略,具有高效、可靠的特点,进一步提升了任务调动性能。
进一步地,在响应于任务的成功率低于预设的成功率阈值,将任务发送至第一节点,将任务对应的备份任务发送至第二节点后,可以获取目标任务执行结果。
作为一种可能的实现方式,如图2所示,在上述实施例的基础上,具体包括以下步骤:
S201、将第一节点和第二节点中最先完成任务的节点的任务执行结果,确定为目标任务执行结果。
可选地,若第一节点先于第二节点完成任务,则可以将第一节点的任务执行结果作为目标任务执行结果;若第二节点先于第一节点完成任务,则可以将第二节点的任务执行结果作为目标任务执行结果。
S202、将第一节点和第二节点中,除最先完成任务的节点之外的其他节点的任务执行结果删除。
可选地,若第一节点先于第二节点完成任务,则可以将第二节点的任务执行结果删除;若第二节点先于第一节点完成任务,则可以将第一节点的任务执行结果删除。
由此,本申请提出的任务调度方法,可以通过将第一节点和第二节点中最先完成任务的节点的任务执行结果,确定为目标任务执行结果,并将第一节点和第二节点中,除最先完成任务的节点之外的其他节点的任务执行结果删除,以在创建任务时就创建相应的备份任务,提升了任务调动的成功率和性能,同时避免了在任务调度过程中,因任务执行失败再提交备份任务所导致的耗时极久的问题。
需要说明的是,本申请中,在将任务对应的备份任务发送至第二节点之前,可以确定备份任务的数量。
作为一种可能的实现方式,如图3所示,在上述实施例的基础上,具体包括以下步骤:
S301、计算成功率阈值和任务的成功率的比值。
举例而言,成功率阈值为k0,任务的成功率为k,则比值为k0/k。
S302、根据比值确定备份任务的数量。
作为一种可能的实现方式,可以将比值与预设的数量阈值之间较小的确定为备份任务的数量。其中,预设的数量阈值可以根据实际情况进行设定。
可选地,可以响应于比值小于或者等于预设的数量阈值,将比值确定为备份任务的数量;可选地,可以响应于比值大于数量阈值,将数量阈值确定为备份任务的数量。
由此,本申请提出的任务调度方法,可以通过计算成功率阈值和任务的成功率的比值,然后根据比值确定备份任务的数量,以根据合理的备份任务数量,能够尽可能地提升任务调度的成功率和性能。
需要说明的是,现有技术中,对任务成功率的预测是基于以下假设进行的:系统运行于一个同构的环境中,且任务的执行时间与输入数据成线性关系。基于前述假设,可以对样本数据进行求解,以得到程序运行的平均时间。作业的运行时间T=s*c/n,其中s表示作业输入数据的大小,c表示数据的单元处理时间,n表示任务的个数。
前述方法的优势在于简单易用,但劣势也极为明显,即不能适应于异构环境的需要,这样一来,在样本数据分布不均匀的情况下,获取到的数据的单元处理时间的准确率极低;对于预测仅通过简单数据维度预测运行时间,并未考虑预测任务的成功率来提升系统健壮性。
由此,本申请中,在试图预测任务的成功率时,可以基于训练好的联邦学习模型得到任务的成功率。
其中,联邦学习,是一种新兴的人工智能基础技术,其设计目标是在保障大数据交换时的信息安全、保护终端数据和个人数据隐私、保证合法合规的前提下,在多参与方或多计算结点之间开展高效率的机器学习。此外,根据数据特点,联邦学习主要分为横向联邦学习(对应同构数据)和纵向联邦学习(对应异构数据)等。
作为一种可能的实现方式,如图4所示,在上述实施例的基础上,上述预测所述任务的成功率的具体过程,包括以下步骤:
S401、获取任务对应的数据特征和服务器资源特征。
其中,任务对应的数据特征,可以包括但不限于以下数据特征:列数,行数,每列的25分位数、50分位数、75分位数、最大值、最小值、算数平均数、缺失率、空值率、方差。
其中,服务器资源特征,可以包括但不限于以下数据特征:CPU(CentralProcessing Unit,中央处理器)使用率、内存使用率、磁盘使用率、IO(Input/Output,输入/输出)使用率、操作系统版本、进程数、执行任务数、执行任务数据量、已执行任务的执行时长等。
S402、对数据特征和服务器资源特征进行特征加工处理。
本申请实施例中,当有新的任务发送任务调度节点后,可以获取输入任务对应的数据特征以及服务器资源特征,并将前述特征写入数据库中,作为模型迭代的数据集,然后可以按照模型训练时的特征加工过程,对数据特征和服务器资源特征进行特征加工处理。
需要说明的是,本申请中对于进行特征加工处理的具体方式不作限定,可以根据实际情况进行选取。例如,可以通过特征工程、特征选择、特征变化、以及衍生特征生成等步骤进行特征加工处理。
S403、将特征加工处理后的数据特征和服务器资源特征输入至训练好的联邦学习模型中,得到任务的成功率。
需要说明的是,联邦学习模型是预先训练好的,如图5所示,上述联邦学习模型的训练过程,具体包括以下步骤:
S501、获取样本任务对应的样本数据特征、样本服务器资源特征和样本任务执行结果。
其中,样本任务对应的样本数据特征、样本服务器资源特征和样本任务执行结果可以预先收集。样本任务的数量可以预先设定,例如获取100个样本任务。
S502、对样本数据特征和样本服务器资源特征进行特征加工处理。
可选地,可以按照模型训练时的特征加工过程,对数据特征和服务器资源特征进行特征加工处理。
S503、根据样本任务执行结果和特征加工处理后的样本数据特征和样本服务器资源特征,对待训练的联邦学习模型进行训练,得到候选联邦学习模型。
S504、根据候选联邦学习模型生成训练好的联邦学习模型。
作为一种可能的实现方式,如图6所示,在上述步骤的基础上,上述步骤S504的具体过程,包括以下步骤:
S601、将候选联邦学习模型中的加密梯度参数发送至服务器。
本申请实施例中,各参与方均可以从服务器下载最新联邦学习模型(候选联邦学习模型),并利用本地数据对模型进行训练,然后将候选联邦学习模型中的加密梯度参数发送至服务器。
S602、接收服务器发送的聚合后的加密梯度参数,聚合后的加密梯度参数为服务器根据接收到的多个加密梯度参数聚合得到。
本申请实施例中,服务器可以接收各参与方发送的加密梯度参数,并对接收到的所有加密梯度参数进行聚合,并发送聚合后的加密梯度参数至各参与方。相应地,可以接收服务器发送的聚合后的加密梯度参数。
S603、根据聚合后的加密梯度参数更新候选联邦学习模型,得到训练好的联邦学习模型。
本申请实施例中,可以根据根据聚合后的加密梯度参数更新候选联邦学习模型,得到训练好的联邦学习模型。进一步地,将训练好的联邦学习模型导入联邦推理服务,这样一来,通过推理接口传入相应的数据特征即可进行成功率的预测。
由此,本申请提出的任务调度方法,可以通过获取任务对应的数据特征和服务器资源特征,并对数据特征和服务器资源特征进行特征加工处理,进而将特征加工处理后的数据特征和服务器资源特征输入至训练好的联邦学习模型中,得到任务的成功率,充分利用了参与方内外部任务提交、执行的相关数据补充单方数据孤岛的劣势,通过联邦学习算法进行模型训练来预测任务的成功率,进一步提升了任务调动的成功率和性能。
需要说明的是,如图7所示,本申请中,当Master角色获取到新的任务时,可以获取任务对应的数据特征和服务器资源特征,并对数据特征和服务器资源特征进行特征加工处理,进而将特征加工处理后的数据特征和服务器资源特征输入至训练好的联邦学习模型中,得到任务的成功率。
进一步地,在预测任务的成功率后,可以将预测到的任务的成功率与预设的成功率阈值进行比较,若识别成功率等于或者高于成功率阈值,可以视该任务为成功,则可以将任务发送至第一节点,无须进行任务备份;若识别成功率低于成功率阈值,可以视该任务为失败,则可以响应于任务的成功率低于预设的成功率阈值,将任务发送至预设的第一节点。同时,可以计算成功率阈值和任务的成功率的比值,并根据比值确定备份任务的数量,进而根据确定的备份任务的数量,将任务对应的备份任务发送至第二节点。
进一步地,可以将第一节点和第二节点中最先完成任务的节点的任务执行结果,确定为目标任务执行结果,并将第一节点和第二节点中,除最先完成任务的节点之外的其他节点的任务执行结果删除。
由此,本申请提出的任务调度方法,无须在任务执行较长的时长后才对任务是否失败的判定结果进行获取,通过预测分布式任务中每个子任务的成功率,并根据成功率确定匹配的调度策略,并在创建任务时就创建相应的备份任务,避免了在任务调度过程中,因任务执行失败再提交备份任务所导致的耗时极久的问题,极大地缩短了任务调度耗时,提高了任务调度过程中的成功率和性能,以及系统的健壮性。进一步地,通过将特征加工处理后的数据特征和服务器资源特征输入至训练好的联邦学习模型中,得到任务的成功率,充分利用了参与方内、外(各参与方)部任务提交、执行的相关数据补充单方数据孤岛的劣势,通过联邦学习算法进行模型训练来预测任务的成功率,进一步提升了任务调动的成功率和性能。
基于同一申请构思,本申请实施例还提供了一种任务调度方法对应的装置。
图8为本申请实施例提供的任务调度装置的结构示意图。
如图8所示,该任务调度装置1000,包括:获取模块110、预测模块120和第一响应模块130。其中,
获取模块110,用于获取任务;
预测模块120,用于预测所述任务的成功率;
第一响应模块130,用于响应于所述任务的成功率低于预设的成功率阈值,将所述任务发送至预设的第一节点,将所述任务对应的备份任务发送至第二节点,所述第二节点与所述第一节点不同。
根据本申请的一个实施例,如图9所示,任务调度装置1000,还包括:
第二响应模块140,用于响应于所述任务的成功率等于或者高于所述成功率阈值,将所述任务发送至所述第一节点;
确定模块150,用于将所述第一节点和第二节点中最先完成任务的节点的任务执行结果,确定为目标任务执行结果;
删除模块160,用于将所述第一节点和第二节点中,除所述最先完成任务的节点之外的其他节点的任务执行结果删除。
根据本申请的一个实施例,如图10所示,第一响应模块130,还包括:
计算子模块131,用于计算所述成功率阈值和所述任务的成功率的比值;
第一确定子模块132,用于根据所述比值确定所述备份任务的数量。
其中,第一确定子模块132,包括:
第一响应单元1321,用于响应于所述比值小于或者等于预设的数量阈值,将所述比值确定为所述备份任务的数量;或者,
第二响应单元1322,用于响应于所述比值大于所述数量阈值,将所述数量阈值确定为所述备份任务的数量。
根据本申请的一个实施例,如图11所示,预测模块120,包括:
第一获取子模块121,用于获取所述任务对应的数据特征和服务器资源特征;
第一处理子模块122,用于对所述数据特征和所述服务器资源特征进行特征加工处理;
第二确定子模块123,用于将特征加工处理后的所述数据特征和所述服务器资源特征输入至训练好的联邦学习模型中,得到所述任务的成功率。
预测模块120,还包括:
第二获取子模块124,用于获取样本任务对应的样本数据特征、样本服务器资源特征和样本任务执行结果;
第二处理子模块125,用于对所述样本数据特征和所述样本服务器资源特征进行特征加工处理;
第三确定子模块126,用于根据所述样本任务执行结果和特征加工处理后的所述样本数据特征和所述样本服务器资源特征,对待训练的联邦学习模型进行训练,得到候选联邦学习模型;
生成子模块127,用于根据所述候选联邦学习模型生成所述训练好的联邦学习模型。
其中,生成子模块127,包括:
发送单元1271,用于将所述候选联邦学习模型中的加密梯度参数发送至服务器;
接收单元1272,用于接收服务器发送的聚合后的加密梯度参数,所述聚合后的加密梯度参数为所述服务器根据接收到的多个加密梯度参数聚合得到;
确定单元1273,用于根据所述聚合后的加密梯度参数更新所述候选联邦学习模型,得到所述训练好的联邦学习模型。
由此,本申请提出的任务调度装置,可以通过获取任务,并预测任务的成功率,然后响应于任务的成功率低于预设的成功率阈值,将任务发送至预设的第一节点,将任务对应的备份任务发送至第二节点,无须在任务执行较长的时长后才对任务是否失败的判定结果进行获取,通过预测分布式任务中每个子任务的成功率,极大地缩短了任务调度耗时,提高了任务调度过程中的效率和可靠性。进一步地,通过在创建任务时就创建相应的备份任务,提升了任务调动的成功率和性能,以及系统的健壮性。
基于同一申请构思,本申请实施例还提供了一种电子设备。
图12为本申请实施例提供的电子设备的结构示意图。如图12所示,该电子设备2000,包括存储器210、处理器220及存储在存储器210上并可在处理器220上运行的计算机程序,处理器执行程序时,实现前述的任务调度方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
应当注意的是,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的部件或步骤。位于部件之前的单词“一”或“一个”不排除存在多个这样的部件。本申请可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (18)

1.一种任务调度方法,其特征在于,包括:
获取任务;
预测所述任务的成功率;
响应于所述任务的成功率低于预设的成功率阈值,将所述任务发送至预设的第一节点,将所述任务对应的备份任务发送至第二节点,所述第二节点与所述第一节点不同。
2.根据权利要求1所述的任务调度方法,其特征在于,还包括:
响应于所述任务的成功率等于或者高于所述成功率阈值,将所述任务发送至所述第一节点。
3.根据权利要求1所述的任务调度方法,其特征在于,还包括:
将所述第一节点和第二节点中最先完成任务的节点的任务执行结果,确定为目标任务执行结果;
将所述第一节点和第二节点中,除所述最先完成任务的节点之外的其他节点的任务执行结果删除。
4.根据权利要求1所述的任务调度方法,其特征在于,所述将所述任务对应的备份任务发送至第二节点之前,还包括:
计算所述成功率阈值和所述任务的成功率的比值;
根据所述比值确定所述备份任务的数量。
5.根据权利要求4所述的任务调度方法,其特征在于,所述根据所述比值确定所述备份任务的数量,包括:
响应于所述比值小于或者等于预设的数量阈值,将所述比值确定为所述备份任务的数量;或者,
响应于所述比值大于所述数量阈值,将所述数量阈值确定为所述备份任务的数量。
6.根据权利要求1所述的任务调度方法,其特征在于,所述预测所述任务的成功率,包括:
获取所述任务对应的数据特征和服务器资源特征;
对所述数据特征和所述服务器资源特征进行特征加工处理;
将特征加工处理后的所述数据特征和所述服务器资源特征输入至训练好的联邦学习模型中,得到所述任务的成功率。
7.根据权利要求6所述的任务调度方法,其特征在于,还包括:
获取样本任务对应的样本数据特征、样本服务器资源特征和样本任务执行结果;
对所述样本数据特征和所述样本服务器资源特征进行特征加工处理;
根据所述样本任务执行结果和特征加工处理后的所述样本数据特征和所述样本服务器资源特征,对待训练的联邦学习模型进行训练,得到候选联邦学习模型;
根据所述候选联邦学习模型生成所述训练好的联邦学习模型。
8.根据权利要求7所述的任务调度方法,其特征在于,所述根据所述候选联邦学习模型生成所述训练好的联邦学习模型,包括:
将所述候选联邦学习模型中的加密梯度参数发送至服务器;
接收服务器发送的聚合后的加密梯度参数,所述聚合后的加密梯度参数为所述服务器根据接收到的多个加密梯度参数聚合得到;
根据所述聚合后的加密梯度参数更新所述候选联邦学习模型,得到所述训练好的联邦学习模型。
9.一种任务调度装置,其特征在于,包括:
获取模块,用于获取任务;
预测模块,用于预测所述任务的成功率;
第一响应模块,用于响应于所述任务的成功率低于预设的成功率阈值,将所述任务发送至预设的第一节点,将所述任务对应的备份任务发送至第二节点,所述第二节点与所述第一节点不同。
10.根据权利要求9所述的任务调度装置,其特征在于,还包括:
第二响应模块,用于响应于所述任务的成功率等于或者高于所述成功率阈值,将所述任务发送至所述第一节点。
11.根据权利要求9所述的任务调度装置,其特征在于,还包括:
确定模块,用于将所述第一节点和第二节点中最先完成任务的节点的任务执行结果,确定为目标任务执行结果;
删除模块,用于将所述第一节点和第二节点中,除所述最先完成任务的节点之外的其他节点的任务执行结果删除。
12.根据权利要求9所述的任务调度装置,其特征在于,所述第一响应模块,还包括:
计算子模块,用于计算所述成功率阈值和所述任务的成功率的比值;
第一确定子模块,用于根据所述比值确定所述备份任务的数量。
13.根据权利要求12所述的任务调度装置,其特征在于,所述第一确定子模块,包括:
第一响应单元,用于响应于所述比值小于或者等于预设的数量阈值,将所述比值确定为所述备份任务的数量;或者,
第二响应单元,用于响应于所述比值大于所述数量阈值,将所述数量阈值确定为所述备份任务的数量。
14.根据权利要求9所述的任务调度装置,其特征在于,所述预测模块,包括:
第一获取子模块,用于获取所述任务对应的数据特征和服务器资源特征;
第一处理子模块,用于对所述数据特征和所述服务器资源特征进行特征加工处理;
第二确定子模块,用于将特征加工处理后的所述数据特征和所述服务器资源特征输入至训练好的联邦学习模型中,得到所述任务的成功率。
15.根据权利要求14所述的任务调度装置,其特征在于,还包括:
第二获取子模块,用于获取样本任务对应的样本数据特征、样本服务器资源特征和样本任务执行结果;
第二处理子模块,用于对所述样本数据特征和所述样本服务器资源特征进行特征加工处理;
第三确定子模块,用于根据所述样本任务执行结果和特征加工处理后的所述样本数据特征和所述样本服务器资源特征,对待训练的联邦学习模型进行训练,得到候选联邦学习模型;
生成子模块,用于根据所述候选联邦学习模型生成所述训练好的联邦学习模型。
16.根据权利要求15所述的任务调度装置,其特征在于,所述生成子模块,包括:
发送单元,用于将所述候选联邦学习模型中的加密梯度参数发送至服务器;
接收单元,用于接收服务器发送的聚合后的加密梯度参数,所述聚合后的加密梯度参数为所述服务器根据接收到的多个加密梯度参数聚合得到;
确定单元,用于根据所述聚合后的加密梯度参数更新所述候选联邦学习模型,得到所述训练好的联邦学习模型。
17.一种电子设备,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时,实现如权利要求1-8中任一项所述的任务调度方法。
18.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-8中任一项所述的任务调度方法。
CN202011584137.8A 2020-12-28 2020-12-28 一种任务调度方法、装置及电子设备 Pending CN113821313A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011584137.8A CN113821313A (zh) 2020-12-28 2020-12-28 一种任务调度方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011584137.8A CN113821313A (zh) 2020-12-28 2020-12-28 一种任务调度方法、装置及电子设备

Publications (1)

Publication Number Publication Date
CN113821313A true CN113821313A (zh) 2021-12-21

Family

ID=78924879

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011584137.8A Pending CN113821313A (zh) 2020-12-28 2020-12-28 一种任务调度方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN113821313A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114330759A (zh) * 2022-03-08 2022-04-12 富算科技(上海)有限公司 一种纵向联邦学习模型的训练方法及系统

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090300633A1 (en) * 2008-05-28 2009-12-03 International Business Machines Corporation Method and System for Scheduling and Controlling Backups in a Computer System
CN101719931A (zh) * 2009-11-27 2010-06-02 南京邮电大学 一种基于多智能主体的层次式云端计算模型构建方法
CN101888610A (zh) * 2010-07-06 2010-11-17 中兴通讯股份有限公司 一种实现短消息业务的方法、系统和装置
CN101981878A (zh) * 2008-03-31 2011-02-23 日本电气株式会社 分布式资源管理系统、分布式资源管理方法、及分布式资源管理程序
CN102685237A (zh) * 2012-05-16 2012-09-19 东南大学 一种集群环境下请求会话保持与调度的方法
CN102882981A (zh) * 2012-10-19 2013-01-16 南京邮电大学 一种对等结构云平台下节点任务的负载均衡方法
CN105302630A (zh) * 2015-10-26 2016-02-03 深圳大学 一种虚拟机的动态调整方法及其系统
WO2017050141A1 (zh) * 2015-09-24 2017-03-30 网宿科技股份有限公司 基于分布式存储的文件分发系统及方法
CN107087019A (zh) * 2017-03-14 2017-08-22 西安电子科技大学 一种端云协同计算架构及任务调度装置及方法
US20190163540A1 (en) * 2017-11-30 2019-05-30 International Business Machines Corporation Job scheduling based on node and application characteristics
CN109918187A (zh) * 2019-03-12 2019-06-21 北京同城必应科技有限公司 任务调度方法、装置、设备和存储介质
CN111580950A (zh) * 2020-06-15 2020-08-25 四川中电启明星信息技术有限公司 一种提升云可靠性的自适应反馈资源调度方法

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101981878A (zh) * 2008-03-31 2011-02-23 日本电气株式会社 分布式资源管理系统、分布式资源管理方法、及分布式资源管理程序
US20090300633A1 (en) * 2008-05-28 2009-12-03 International Business Machines Corporation Method and System for Scheduling and Controlling Backups in a Computer System
CN101719931A (zh) * 2009-11-27 2010-06-02 南京邮电大学 一种基于多智能主体的层次式云端计算模型构建方法
CN101888610A (zh) * 2010-07-06 2010-11-17 中兴通讯股份有限公司 一种实现短消息业务的方法、系统和装置
CN102685237A (zh) * 2012-05-16 2012-09-19 东南大学 一种集群环境下请求会话保持与调度的方法
CN102882981A (zh) * 2012-10-19 2013-01-16 南京邮电大学 一种对等结构云平台下节点任务的负载均衡方法
WO2017050141A1 (zh) * 2015-09-24 2017-03-30 网宿科技股份有限公司 基于分布式存储的文件分发系统及方法
CN105302630A (zh) * 2015-10-26 2016-02-03 深圳大学 一种虚拟机的动态调整方法及其系统
CN107087019A (zh) * 2017-03-14 2017-08-22 西安电子科技大学 一种端云协同计算架构及任务调度装置及方法
US20190163540A1 (en) * 2017-11-30 2019-05-30 International Business Machines Corporation Job scheduling based on node and application characteristics
CN109918187A (zh) * 2019-03-12 2019-06-21 北京同城必应科技有限公司 任务调度方法、装置、设备和存储介质
CN111580950A (zh) * 2020-06-15 2020-08-25 四川中电启明星信息技术有限公司 一种提升云可靠性的自适应反馈资源调度方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
叶盛钊 等: "基于动态异构模型的非周期性任务容错调度", 计算机工程, pages 6 - 13 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114330759A (zh) * 2022-03-08 2022-04-12 富算科技(上海)有限公司 一种纵向联邦学习模型的训练方法及系统
CN114330759B (zh) * 2022-03-08 2022-08-02 富算科技(上海)有限公司 一种纵向联邦学习模型的训练方法及系统

Similar Documents

Publication Publication Date Title
WO2021115480A1 (zh) 联邦学习方法、装置、设备和存储介质
Peng et al. DL2: A deep learning-driven scheduler for deep learning clusters
CN109993299B (zh) 数据训练方法及装置、存储介质、电子装置
CN115248728B (zh) 面向智能计算的分布式训练任务调度方法、系统和装置
US10042886B2 (en) Distributed resource-aware task scheduling with replicated data placement in parallel database clusters
CN110262901B (zh) 一种数据处理方法及数据处理系统
TWI547817B (zh) 叢集運算架構的資源規劃方法、系統及裝置
US10896178B2 (en) High performance query processing and data analytics
CN114072766A (zh) 用于数字劳动力智能编排的系统和方法
CN107729138B (zh) 一种高性能分布式矢量空间数据的分析方法和装置
CN111274036A (zh) 一种基于速度预测的深度学习任务的调度方法
CN114610474B (zh) 一种异构超算环境下多策略的作业调度方法及系统
EP2977898B1 (en) Task allocation in a computing environment
JP2022017588A (ja) 深層学習フレームワークのトレーニング方法、装置及び記憶媒体
CN114675965B (zh) 联邦学习方法、装置、设备和介质
CN114237869B (zh) 基于强化学习的Ray双层调度方法、装置和电子设备
CN116263701A (zh) 算力网络任务调度方法、装置、计算机设备及存储介质
CN116032663A (zh) 基于边缘设备的隐私数据处理系统、方法、设备及介质
CN111612155B (zh) 一种分布式机器学习系统及适用于其的通信调度方法
WO2020147601A1 (zh) 用于对图进行学习的系统
CN114356578A (zh) 自然语言处理模型的并行计算方法、装置、设备及介质
CN113821313A (zh) 一种任务调度方法、装置及电子设备
CN111597035B (zh) 基于多线程的仿真引擎时间推进方法及系统
CN115361382B (zh) 基于数据群组的数据处理方法、装置、设备和存储介质
CN116582407A (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