hadoop之mapreduce.input.fileinputformat.split.minsize参数


mapreduce.input.fileinputformat.split.minsize(旧版本中为mapred.max.split.size)
	The minimum size chunk that map input should be split into. 
	By increasing this value beyond dfs.blocksize, you can reduce
	 the number of mappers in your job. This is because if say you
	 set the value of mapreduce.input.fileinputformat.split.minsize 
	 to 4x dfs.blocksize, then 4 times the size of blocks will be 
	 sent to a single mapper, thus, reducing the number of mappers 
	 needed to process your input. The value for this property is the 
	 number of bytes for input split. Thus to set the value to 256MB, 
	 you will specify 268435456 as the value for this property.

	 1.该参数只是针对一个大文件来说的,比如一个大文件有275M,默认dfs.blockSize=128M
	 那么该文件在mapreduce.input.fileinputformat.split.minsize

hadoop之mapreduce.input.fileinputformat.split.minsize参数_第1张图片


	 2.那么设置mapreduce.input.fileinputformat.split.minsize=4*(dfs.blockSize),之前的6个map会变成
	 一个map如下:


	 3.那么如果有多个小文件 例如 words01.log,words02.log,words03.log,words03.log,并且文件的大小都为几KB
	 那么会启动四个map。


所以说该参数对于众多的小文件处理并不起什么作用只是会针对切分后的大文件进行splits的合并,降低map数



来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31506529/viewspace-2217440/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/31506529/viewspace-2217440/

你可能感兴趣的:(hadoop之mapreduce.input.fileinputformat.split.minsize参数)