【技术实现步骤摘要】
优化MapReduce计算的方法、装置、设备和计算机存储介质
本专利技术涉及数据处理
,尤其涉及一种优化MapReduce计算的方法、装置、设备和计算机存储介质。
技术介绍
MapReduce一直是开源大数据平台Hadoop的组成部分,它是一种分布式计算模型,主要用于搜索领域,用于解决海量数据的计算问题。但是,现有技术在使用MapReduce进行计算时,尤其在MapReduce计算的Reduce阶段,通常会采用以随机顺序来启动各Reduce任务的方式。但由于Reduce阶段存在多个Reduce任务,采用随机顺序来启动各个Reduce任务的方式,会极容易导致MapReduce计算出现问题,且还会造成MapReduce计算的运行时间较长、运行效率较低的问题。
技术实现思路
有鉴于此,本专利技术提供了一种优化MapReduce计算的方法、装置、设备和计算机存储介质,用于缩短MapReduce计算的运行时间,提升MapReduce计算的运行效率。本专利技术为解决技术问题所采用的技术方案是提供一种优化MapReduce计算的方法,所述方法包括:在各Map任务全部运行完毕之后,获取各Reduce任务需要处理的数据量;根据所述各Reduce任务需要处理的数据量,按照数据量从大到小的顺序对各Reduce任务进行排序;根据排序结果依次启动各Reduce任务,在各Reduce任务全部运行完毕后完成MapReduce计算。根据本专利技术一优选实施例,在获取各Reduce任务需要处理的数据量之前,还包括:获取当前Reduce任务的数量;确定所述当前Reduce任务的 ...
【技术保护点】
1.一种优化MapReduce计算的方法,其特征在于,所述方法包括:在各Map任务全部运行完毕之后,获取各Reduce任务需要处理的数据量;根据所述各Reduce任务需要处理的数据量,按照数据量从大到小的顺序对各Reduce任务进行排序;根据排序结果依次启动各Reduce任务,在各Reduce任务全部运行完毕后完成MapReduce计算。
【技术特征摘要】
1.一种优化MapReduce计算的方法,其特征在于,所述方法包括:在各Map任务全部运行完毕之后,获取各Reduce任务需要处理的数据量;根据所述各Reduce任务需要处理的数据量,按照数据量从大到小的顺序对各Reduce任务进行排序;根据排序结果依次启动各Reduce任务,在各Reduce任务全部运行完毕后完成MapReduce计算。2.根据权利要求1所述的方法,其特征在于,在获取各Reduce任务需要处理的数据量之前,还包括:获取当前Reduce任务的数量;确定所述当前Reduce任务的数量是否超过预设阈值,若超过,则执行获取各Reduce任务需要处理的数据量的操作,否则不执行。3.根据权利要求1所述的方法,其特征在于,在获取各Reduce任务需要处理的数据量之前,还包括:确定优化启用参数的值是否为预设值;若所述优化启用参数的值为预设值,则执行获取各Reduce任务需要处理的数据量的操作,否则不执行。4.根据权利要求1所述的方法,其特征在于,所述根据排序结果依次启动各Reduce任务包括:确定各Reduce任务对应的内存资源;将所确定的内存资源分配至各Reduce任务之后,根据排序结果依次启动各Reduce任务。5.根据权利要求4所述的方法,其特征在于,所述确定各Reduce任务对应的内存资源包括:将预设的资源容量确定为各Reduce任务对应的内存资源;或者根据各Reduce任务需要处理的数据量确定各Reduce任务对应的内存资源。6.根据权利要求5所述的方法,其特征在于,所述根据各Reduce任务需要处理的数据量确定各Reduce任务对应的内存资源包括:根据所述排序结果依次取出一个Reduce任务;确定所取出的Reduce任务需要处理的数据量是否大于等于预设的数据量阈值,若是,则根据该Reduce任务需要处理的数据量计算其对应的内存资源;若否,则将该Reduce任务与其他Reduce任务进行合并,并根据合并得到的Reduce任务需要处理的数据量计算其对应的内存资源;依次处理完全部的Reduce任务后,得到各Reduce任务对应的内存资源。7.根据权利要求6所述的方法,其特征在于,将所取出的Reduce任务与其他Reduce任务进行合并包括:计算所述数据量阈值与所取出的Reduce任务需要处理的数据量之间的数据量差值,并确定所述数据量差值是否大于等于排序结果中最后一个Reduce任务需要处理的数据量;若是,从剩余的Reduce任务中选择一个需要处理的数据量小于等于所述数据量差值的Reduce任务之后,再计算数据量阈值与所选择的两个Reduce任务需要处理的数据量之间的数据量差值;确定所述数据量差值是否大于等于排序结果中最后一个Reduce任务需要处理的数据量,以此循环,直至计算得到的数据量差值小于排序结果中最后一个Reduce任务需要处理的数据量,则将选择出的多个Reduce任务合并为一个Reduce任务。8.一种优化MapReduce计算的装置,其特征在于,所述装置包括:获取单元,用于在各Map任务全部运行完毕之后,获取各Reduce任务需要处理的数据量;排序单元,用于根据所述各Reduce任务需要处理的数据量,按照数据量从大到小的顺序对各Re...
【专利技术属性】
技术研发人员:侯志贞,
申请(专利权)人:百度在线网络技术北京有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。