任务处理方法、装置、设备及计算机可读存储介质与流程

文档序号:35966985发布日期:2023-11-09 07:13阅读:41来源:国知局
任务处理方法、装置、设备及计算机可读存储介质与流程

本技术属于计算机,尤其涉及一种任务处理方法、装置、设 备及计算机可读存储介质。


背景技术:

1、在分布式集群环境下,如在hadoop平台计算过程中,因为用户程序、 负载不均衡或者资源分布不均匀等原因,造成同一个作业的多个任务运行 速度不一致,部分任务运行速度明显慢于其他的任务,即这些任务拖慢了 作业的整体执行速度。

2、为了提高整体作业的处理速度,对于运行较慢的任务,启动备份任务 执行是一种比较通用的做法,旨在通过备份任务的启动,采用竞赛式的任 务竞争方式(备份任务与原任务竞争),尽快完成任务执行。

3、然而,经本技术的发明人发现,目前方案对于慢任务评估的准确度较 低。


技术实现思路

1、本技术实施例提供一种任务处理方法、装置、设备及计算机可读存储 介质,能够提高慢任务评估的准确度。

2、第一方面,本技术实施例提供一种任务处理方法,任务的处理过程包 括map任务处理阶段和reduce任务处理阶段,reduce任务处理阶段包括 多个子阶段,方法包括:预估多个子阶段中各个子阶段执行reduce任务的 耗时占比;对于当前执行的m个reduce任务中的任意第i个reduce任务, 根据第i个reduce任务所处于的子阶段和至少一个子阶段的耗时占比,确 定第i个reduce任务的执行进度,i和m为正整数;根据m个reduce任 务的执行进度,得到平均执行进度;根据每个reduce任务的执行进度和平 均执行进度,确定执行进度小于或等于平均执行进度的目标任务。

3、根据本技术第一方面的实施方式,在根据每个reduce任务的执行进度 和平均执行进度,确定执行进度小于或等于平均执行进度的目标任务之前, 方法还可以包括:获取第一评价参数,第一评价参数用于校正平均执行进 度;根据每个reduce任务的执行进度和平均执行进度,确定执行进度小于 或等于平均执行进度的目标任务,具体可以包括:对于当前执行的m个 reduce任务中的任意第j个reduce任务,当第j个reduce任务的执行进度小于或等于第一差值与平均执行进度的乘积时,确定第j个reduce任务为 目标任务,j为正整数;第一差值为数值1与第一评价参数的差值。

4、根据本技术第一方面前述任一实施方式,多个子阶段包括混洗shuffle 子阶段、排序sort子阶段和规约reduce子阶段;预估多个子阶段中各个子 阶段执行reduce任务的耗时占比,具体可以包括:预估shuffle子阶段、 sort子阶段和reduce子阶段执行reduce任务耗费的时长;根据shuffle子阶 段、sort子阶段和reduce子阶段执行reduce任务耗费的时长之和以及各个 子阶段执行reduce任务耗费的时长,得到shuffle子阶段执行reduce任务 的耗时占比、sort子阶段执行reduce任务的耗时占比和reduce子阶段执行 reduce任务的耗时占比。

5、根据本技术第一方面前述任一实施方式,根据第i个reduce任务所处 于的子阶段和至少一个子阶段的耗时占比,确定第i个reduce任务的执行 进度,具体可以包括:根据第i个reduce任务已完成处理的数据与第i个 reduce任务总共需要处理的数据,确定任务进度;当第i个reduce任务处 于shuffle子阶段时,根据shuffle子阶段执行reduce任务的耗时占比与任 务进度,确定第i个reduce任务的执行进度;当第i个reduce任务处于 sort子阶段时,根据shuffle子阶段执行reduce任务的耗时占比、sort子阶 段执行reduce任务的耗时占比和任务进度,确定第i个reduce任务的执行 进度;当第i个reduce任务处于reduce子阶段时,根据shuffle子阶段执行 reduce任务的耗时占比、sort子阶段执行reduce任务的耗时占比、reduce 子阶段执行reduce任务的耗时占比以及任务进度,确定第i个reduce任务 的执行进度。

6、根据本技术第一方面前述任一实施方式,方法还可以包括:对于执行 map任务的n个节点,计算每个节点执行多个map任务的第一平均执行效 率;计算n个第一平均执行效率的平均值,得到第二平均执行效率,n个 第一平均执行效率与n个节点一一对应;对于n个节点中的任意第p个节 点,当第p个节点的第一平均执行效率小于第二差值与第二平均执行效率 的乘积时,确定第p个节点为第一目标节点,p为正整数;第二差值为数 值1与预设的第一调整系数的差值;剔除第一目标节点。

7、根据本技术第一方面前述任一实施方式,方法还可以包括:对于执行 reduce任务的q个节点,计算每个节点执行多个reduce任务的第三平均 执行效率;计算q个第三平均执行效率的平均值,得到第四平均执行效率, q个第三平均执行效率与q个节点一一对应;对于q个节点中的任意第q 个节点,当第q个节点的第三平均执行效率小于第三差值与第四平均执行 效率的乘积时,确定第q个节点为第二目标节点,q为正整数;第三差值 为数值1与预设的第二调整系数的差值;剔除第二目标节点。

8、根据本技术第一方面前述任一实施方式,在根据每个reduce任务的执 行进度和平均执行进度,确定执行进度小于或等于平均执行进度的目标任 务之后,方法还可以包括:选择目标备份节点;基于目标备份节点执行目 标任务的备份任务。

9、根据本技术第一方面前述任一实施方式,选择目标备份节点,具体可 以包括:获取与第x个节点通信连接的多个节点的基本信息和多个节点与 第x个节点之间的带宽信息,基本信息包括节点核心数、频率和核心始终 周期,x为正整数;根据基本信息和带宽信息,计算第x个节点分别与多 个节点之间的备份任务效度评价参数;在第x个节点执行目标任务时,根 据第x个节点与多个节点之间的备份任务效度评价参数,从多个节点中确 定出目标备份节点。

10、根据本技术第一方面前述任一实施方式,在根据第x个节点与多个节 点之间的备份任务效度评价参数,从多个节点中确定出目标备份节点之前, 方法还可以包括:对于任意第y个节点,获取与第y个节点通信连接的n 个节点出现目标任务的概率值以及第y个节点分别与n个节点之间的备份 任务效度评价参数,y与n均为正整数;根据第y个节点与n个节点之间的 备份任务效度评价参数以及n个节点出现目标任务的概率值,确定第y个 节点对于全局备份任务的潜在贡献度;根据第x个节点与多个节点之间的 备份任务效度评价参数,从多个节点中确定出目标备份节点,具体可以包 括:根据第x个节点与多个节点之间的备份任务效度评价参数、以及多个 节点中各个节点对于全局备份任务的潜在贡献度,从多个节点中确定出目 标备份节点。

11、第二方面,本技术实施例提供了一种任务处理装置,任务的处理过程 包括map任务处理阶段和reduce任务处理阶段,reduce任务处理阶段包 括多个子阶段,装置包括:预估模块,用于预估多个子阶段中各个子阶段 执行reduce任务的耗时占比;第一确定模块,用于对于当前执行的m个 reduce任务中的任意第i个reduce任务,根据第i个reduce任务所处于的 子阶段和至少一个子阶段的耗时占比,确定第i个reduce任务的执行进度, i和m为正整数;第二确定模块,用于根据m个reduce任务的执行进度, 得到平均执行进度;第三确定模块,用于根据每个reduce任务的执行进度 和平均执行进度,确定执行进度小于或等于平均执行进度的目标任务。

12、第三方面,本技术实施例提供了一种电子设备,电子设备包括:处理 器、存储器及存储在存储器上并可在处理器上运行的计算机程序,计算机 程序被处理器执行时实现如第一方面提供的任务处理方法的步骤。

13、第四方面,本技术实施例提供了一种计算机可读存储介质,计算机可 读存储介质上存储计算机程序,计算机程序被处理器执行时实现如第一方 面提供的任务处理方法的步骤。

14、本技术实施例的任务处理方法、装置、设备及计算机可读存储介质, 任务的处理过程包括map任务处理阶段和reduce任务处理阶段,reduce 任务处理阶段包括多个子阶段,方法包括:预估多个子阶段中各个子阶段 执行reduce任务的耗时占比;对于当前执行的m个reduce任务中的任意 第i个reduce任务,根据第i个reduce任务所处于的子阶段和至少一个子 阶段的耗时占比,确定第i个reduce任务的执行进度,i和m为正整数; 根据m个reduce任务的执行进度,得到平均执行进度;根据每个reduce 任务的执行进度和平均执行进度,确定执行进度小于或等于平均执行进度 的目标任务。本技术通过对reduce任务处理阶段进行预估划分,动态精准 判断reduce任务处理阶段中各个子阶段的执行耗时占比,并根据reduce 任务处理阶段中各个子阶段的执行耗时占比精确地确定出平均执行进度, 以用于对于执行进度较慢的目标任务(即慢任务)的评估和判断,从而提 升慢任务预估准确性,避免慢任务的冗余创建及慢任务判定疏漏。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1