Hadoop MR Job 关于如何控制Map Task 数量

时间:2023-12-04 08:38:50

  整理下,基本分两个方式:

  一、对于大量大文件(大于block块设置的大小)

    增大minSize,即增大mapred.min.split.size的值,原因:splitsize=max(minisize,min(maxsize,blocksize)),blocksize一般不会做修改.

     在没有设置minisize,maxsize时,splitsize取blocksize.

     

  二、对于大量小文件(小于block块设置的大小)

    这种情况通过增大mapred.min.split.size不可行,

需要使用FileInputFormat衍生的CombineFileInputFormat将多个input path合并成一个InputSplit送给mapper处理,从而减少mapper的数量