[发明专利]一种归约函数数量确定方法、装置及系统有效
| 申请号: | 201910171361.5 | 申请日: | 2019-03-07 |
| 公开(公告)号: | CN109901931B | 公开(公告)日: | 2021-06-15 |
| 发明(设计)人: | 梁建煌 | 申请(专利权)人: | 北京奇艺世纪科技有限公司 |
| 主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F9/46 |
| 代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 王宝筠 |
| 地址: | 100080 北京市海淀*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 函数 数量 确定 方法 装置 系统 | ||
本申请提供了一种规约函数数量确定方法、装置及系统,基于MapReduce服务器,其中,该MapReduce服务器包括将输入的文件块进行计算并输出键值对的映射函数以及对键值对进行归约计算的归约函数,该数量确定方法先获取第一预设时间周期内映射函数输出的键值对的数量。然后确定归约函数处理一个键值对的目标时间,并基于目标时间,确定出第二预设时间周期内归约函数的键值对处理数量。之后基于映射函数输出的键值对的数量以及归约函数的键值对处理数量,确定出归约函数的目标数量。可见,本方案根据映射函数输出的键值对的数量确定出归约函数的目标数量,使得资源合理分配,提高了任务处理效率,避免了由于归约函数的数量过多或过少导致的资源浪费或者卡顿等问题。
技术领域
本申请涉及数据处理技术领域,具体涉及一种规约函数数量确定方法、装置及系统。
背景技术
MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行计算。它包含映射Map以及归约Reduce两部分。具体的,输入文件被分割成多个split块,每一个split块由一个映射函数Mapper计算,映射函数Mapper输出一组新的键值对,如key,value对,然后将键值对发送至归约函数Reducer,由归约函数Reducer进行归约计算。
目前,在将键值对发送至归约函数Reducer之前,需要预先确定归约函数Reducer的个数,映射函数Mapper会将键值对按照所属的归约函数Reducer进行排序,并按照上述排序将键值对存储在连续磁盘内,如存储到SATA上。这样使得归约函数Reducer在读取映射函数Mapper中的键值对时,可以整块读取,进而提高读取性能。
然而,发明人发现,上述方式中归约函数Reducer的个数由用户设定,而设定数量过多或过少,会导致资源浪费或者任务卡顿等现象。因此,如何提供一种规约函数数量确定方法、装置及系统,以提高资源利用率、提高任务处理效率,是本领域技术人员亟待解决的一大技术难题。
发明内容
有鉴于此,本申请实施例提供了一种规约函数数量确定方法、装置及系统,能够提高资源利用率、提高任务处理效率。
为实现上述目的,本申请实施例提供如下技术方案:
一种规约函数数量确定方法,应用于MapReduce服务器,所述MapReduce服务器包括映射函数与归约函数,所述映射函数用于将输入的文件块进行计算,输出至少一个键值对,所述归约函数用于对所述键值对进行归约计算,所述规约函数数量确定方法包括:
获取第一预设时间周期内所述映射函数输出的所述键值对的数量;
确定所述归约函数处理一个所述键值对的目标时间;
基于所述目标时间,确定出第二预设时间周期内所述归约函数的键值对处理数量;
基于所述映射函数输出的键值对的数量以及所述归约函数的键值对处理数量,确定出所述归约函数的目标数量。
可选的,所述获取第一预设时间周期内所述映射函数输出的键值对的数量,包括:
获取第三预设时间周期内,输入所述映射函数的所述文件块的数量以及所述映射函数输出的所述键值对的数量;
基于输入所述映射函数的文件块的数量以及所述映射函数输出的所述键值对的数量,确定出所述映射函数的输入输出比值;
获取所述第一预设时间周期内输入所述映射函数的文件块的数量;
确定所述第一预设时间周期内输入所述映射函数的文件块的数量与所述映射函数的输入输出比值的乘积为第一预设时间周期内所述映射函数输出的键值对的数量。
可选的,所述确定所述归约函数处理一个所述键值对的目标时间,包括:
获取所述键值对的属性标识;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇艺世纪科技有限公司,未经北京奇艺世纪科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910171361.5/2.html,转载请声明来源钻瓜专利网。





