5.2.4 Merge阶段的调优

操作场景

通过调整如下参数减少reduce写磁盘的次数。

操作步骤

参数名 描述
mapreduce.reduce.merge.inmem.threshold 允许多少个文件同时存在reduce内存里。当达到这个阈值时,reduce就会触发mergeAndSpill,将数据写到硬盘上。默认值1000
mapreduce.reduce.shuffle.merge.percent 当reduce中存放map中间结果的buffer使用达到多少百分比时,会触发merge操作。默认值0.66
mapreduce.reduce.shuffle.input.buffer.percent 允许map中间结果占用reduce堆大小的百分比。默认值0.70
mapreduce.reduce.input.buffer.percent 当开始执行reduce函数时,允许map文件占reduce堆大小的百分比。当map文件比较小时,可以将这个值设置成1.0,这样可以避免reduce将拷贝过来的map中间结果写磁盘。默认值0

results matching ""

    No results matching ""