一种归约函数数量确定方法、装置及系统制造方法及图纸

技术编号:21398622 阅读:33 留言:0更新日期:2019-06-19 06:54
本申请提供了一种规约函数数量确定方法、装置及系统,基于MapReduce服务器,其中,该MapReduce服务器包括将输入的文件块进行计算并输出键值对的映射函数以及对键值对进行归约计算的归约函数,该数量确定方法先获取第一预设时间周期内映射函数输出的键值对的数量。然后确定归约函数处理一个键值对的目标时间,并基于目标时间,确定出第二预设时间周期内归约函数的键值对处理数量。之后基于映射函数输出的键值对的数量以及归约函数的键值对处理数量,确定出归约函数的目标数量。可见,本方案根据映射函数输出的键值对的数量确定出归约函数的目标数量,使得资源合理分配,提高了任务处理效率,避免了由于归约函数的数量过多或过少导致的资源浪费或者卡顿等问题。

【技术实现步骤摘要】
一种归约函数数量确定方法、装置及系统
本申请涉及数据处理
,具体涉及一种规约函数数量确定方法、装置及系统。
技术介绍
MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行计算。它包含映射Map以及归约Reduce两部分。具体的,输入文件被分割成多个split块,每一个split块由一个映射函数Mapper计算,映射函数Mapper输出一组新的键值对,如<key,value>对,然后将键值对发送至归约函数Reducer,由归约函数Reducer进行归约计算。目前,在将键值对发送至归约函数Reducer之前,需要预先确定归约函数Reducer的个数,映射函数Mapper会将键值对按照所属的归约函数Reducer进行排序,并按照上述排序将键值对存储在连续磁盘内,如存储到SATA上。这样使得归约函数Reducer在读取映射函数Mapper中的键值对时,可以整块读取,进而提高读取性能。然而,专利技术人发现,上述方式中归约函数Reducer的个数由用户设定,而设定数量过多或过少,会导致资源浪费或者任务卡顿等现象。因此,如何提供一种规约函数数量确定方法、装置及系统,以提高资源利用率、提高任务处理效率,是本领域技术人员亟待解决的一大技术难题。
技术实现思路
有鉴于此,本申请实施例提供了一种规约函数数量确定方法、装置及系统,能够提高资源利用率、提高任务处理效率。为实现上述目的,本申请实施例提供如下技术方案:一种规约函数数量确定方法,应用于MapReduce服务器,所述MapReduce服务器包括映射函数与归约函数,所述映射函数用于将输入的文件块进行计算,输出至少一个键值对,所述归约函数用于对所述键值对进行归约计算,所述规约函数数量确定方法包括:获取第一预设时间周期内所述映射函数输出的所述键值对的数量;确定所述归约函数处理一个所述键值对的目标时间;基于所述目标时间,确定出第二预设时间周期内所述归约函数的键值对处理数量;基于所述映射函数输出的键值对的数量以及所述归约函数的键值对处理数量,确定出所述归约函数的目标数量。可选的,所述获取第一预设时间周期内所述映射函数输出的键值对的数量,包括:获取第三预设时间周期内,输入所述映射函数的所述文件块的数量以及所述映射函数输出的所述键值对的数量;基于输入所述映射函数的文件块的数量以及所述映射函数输出的所述键值对的数量,确定出所述映射函数的输入输出比值;获取所述第一预设时间周期内输入所述映射函数的文件块的数量;确定所述第一预设时间周期内输入所述映射函数的文件块的数量与所述映射函数的输入输出比值的乘积为第一预设时间周期内所述映射函数输出的键值对的数量。可选的,所述确定所述归约函数处理一个所述键值对的目标时间,包括:获取所述键值对的属性标识;当所述属性标识为第一类属性标识时,获取第四预设时间周期内所述键值对的历史处理时间,确定所述历史处理时间的平均值为一个所述键值对的目标时间;当所述属性标识为第二类属性标识时,将所述键值对拆分成多个子数据,并获取每个归约函数处理每条所述子数据的处理时间,确定所述处理时间之和为所述归约函数处理一个所述键值对的目标时间。可选的,所述基于所述目标时间,确定出第二预设时间周期内所述归约函数的键值对处理数量,包括:确定所述第二预设时间周期与所述目标时间的商为所述第二预设时间周期内所述归约函数的键值对处理数量。可选的,所述基于所述映射函数输出的键值对的数量以及所述归约函数的键值对处理数量,确定出所述归约函数的目标数量,包括:确定所述映射函数输出的键值对的数量与所述归约函数的键值对处理数量的商为所述归约函数的目标数量。一种规约函数数量确定装置,应用于MapReduce服务器,所述MapReduce服务器包括映射函数与归约函数,所述映射函数用于将输入的文件块进行计算,输出至少一个键值对,所述归约函数用于对所述键值对进行归约计算,所述规约函数数量确定装置包括:获取模块,用于获取第一预设时间周期内所述映射函数输出的所述键值对的数量;第一确定模块,用于确定所述归约函数处理一个所述键值对的目标时间;第二确定模块,用于基于所述目标时间,确定出第二预设时间周期内所述归约函数的键值对处理数量;第三确定模块,用于基于所述映射函数输出的键值对的数量以及所述归约函数的键值对处理数量,确定出所述归约函数的目标数量。可选的,所述获取模块包括:第一获取单元,用于获取第三预设时间周期内,输入所述映射函数的所述文件块的数量以及所述映射函数输出的所述键值对的数量;第一确定单元,用于基于输入所述映射函数的文件块的数量以及所述映射函数输出的所述键值对的数量,确定出所述映射函数的输入输出比值;第二获取单元,用于获取所述第一预设时间周期内输入所述映射函数的文件块的数量;第二确定单元,用于确定所述第一预设时间周期内输入所述映射函数的文件块的数量与所述映射函数的输入输出比值的乘积为第一预设时间周期内所述映射函数输出的键值对的数量。可选的,所述第一确定模块包括:第三获取单元,用于获取所述键值对的属性标识;第三确定单元,用于当所述属性标识为第一类属性标识时,获取第四预设时间周期内所述键值对的历史处理时间,确定所述历史处理时间的平均值为一个所述键值对的目标时间;第四确定单元,用于当所述属性标识为第二类属性标识时,将所述键值对拆分成多个子数据,并获取每个归约函数处理每条所述子数据的处理时间,确定所述处理时间之和为所述归约函数处理一个所述键值对的目标时间。可选的,第二确定模块包括第五确定单元,所述第三确定模块包括第六确定单元,所述第五确定单元用于确定所述第二预设时间周期与所述目标时间的商为所述第二预设时间周期内所述归约函数的键值对处理数量;所述第六确定单元用于确定所述映射函数输出的键值对的数量与所述归约函数的键值对处理数量的商为所述归约函数的目标数量。一种规约函数数量确定系统,包括任意一项上述的规约函数数量确定装置。基于上述技术方案,本申请提供了一种规约函数数量确定方法,基于MapReduce服务器,其中,MapReduce服务器包括映射函数与归约函数,映射函数用于将输入的文件块进行计算,输出至少一个键值对,归约函数用于对所述键值对进行归约计算,该规约函数数量确定方法首先获取第一预设时间周期内映射函数输出的键值对的数量。然后确定归约函数处理一个键值对的目标时间,并基于目标时间,确定出第二预设时间周期内归约函数的键值对处理数量。之后基于映射函数输出的键值对的数量以及归约函数的键值对处理数量,确定出归约函数的目标数量。可见,本方案根据映射函数输出的键值对的数量确定出归约函数的目标数量,使得资源合理分配,进而提高了任务处理效率,避免了由于归约函数的数量过多或过少导致的资源浪费或者卡顿等问题。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本申请实施例提供的规约函数数量确定系统的结构框图;图2为本申请实施例提供的规约函数数量确定方法的流程图;图3为本申请实施例提供的规约函数数量本文档来自技高网...

【技术保护点】
1.一种规约函数数量确定方法,其特征在于,应用于MapReduce服务器,所述MapReduce服务器包括映射函数与归约函数,所述映射函数用于将输入的文件块进行计算,输出至少一个键值对,所述归约函数用于对所述键值对进行归约计算,所述规约函数数量确定方法包括:获取第一预设时间周期内所述映射函数输出的所述键值对的数量;确定所述归约函数处理一个所述键值对的目标时间;基于所述目标时间,确定出第二预设时间周期内所述归约函数的键值对处理数量;基于所述映射函数输出的键值对的数量以及所述归约函数的键值对处理数量,确定出所述归约函数的目标数量。

【技术特征摘要】
1.一种规约函数数量确定方法,其特征在于,应用于MapReduce服务器,所述MapReduce服务器包括映射函数与归约函数,所述映射函数用于将输入的文件块进行计算,输出至少一个键值对,所述归约函数用于对所述键值对进行归约计算,所述规约函数数量确定方法包括:获取第一预设时间周期内所述映射函数输出的所述键值对的数量;确定所述归约函数处理一个所述键值对的目标时间;基于所述目标时间,确定出第二预设时间周期内所述归约函数的键值对处理数量;基于所述映射函数输出的键值对的数量以及所述归约函数的键值对处理数量,确定出所述归约函数的目标数量。2.根据权利要求1所述的规约函数数量确定方法,其特征在于,所述获取第一预设时间周期内所述映射函数输出的键值对的数量,包括:获取第三预设时间周期内,输入所述映射函数的所述文件块的数量以及所述映射函数输出的所述键值对的数量;基于输入所述映射函数的文件块的数量以及所述映射函数输出的所述键值对的数量,确定出所述映射函数的输入输出比值;获取所述第一预设时间周期内输入所述映射函数的文件块的数量;确定所述第一预设时间周期内输入所述映射函数的文件块的数量与所述映射函数的输入输出比值的乘积为第一预设时间周期内所述映射函数输出的键值对的数量。3.根据权利要求1所述的规约函数数量确定方法,其特征在于,所述确定所述归约函数处理一个所述键值对的目标时间,包括:获取所述键值对的属性标识;当所述属性标识为第一类属性标识时,获取第四预设时间周期内所述键值对的历史处理时间,确定所述历史处理时间的平均值为一个所述键值对的目标时间;当所述属性标识为第二类属性标识时,将所述键值对拆分成多个子数据,并获取每个归约函数处理每条所述子数据的处理时间,确定所述处理时间之和为所述归约函数处理一个所述键值对的目标时间。4.根据权利要求1-3任一项所述的规约函数数量确定方法,其特征在于,所述基于所述目标时间,确定出第二预设时间周期内所述归约函数的键值对处理数量,包括:确定所述第二预设时间周期与所述目标时间的商为所述第二预设时间周期内所述归约函数的键值对处理数量。5.根据权利要求1-3任一项所述的规约函数数量确定方法,其特征在于,所述基于所述映射函数输出的键值对的数量以及所述归约函数的键值对处理数量,确定出所述归约函数的目标数量,包括:确定所述映射函数输出的键值对的数量与所述归约函数的键值对处理数量的商为所述归约函数的目标数量。6.一种规约函数数量确定装置,...

【专利技术属性】
技术研发人员:梁建煌
申请(专利权)人:北京奇艺世纪科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1