我有一个大小为39MB的文件,我将块大小设置为36MB。当文件上传到HDFS时,它将文件成功存储在两个块中。现在,当我运行一个Map-Reduce作业此文件(简单的读取作业),作业计数器显示: “信息mapreduce.JobSubmitter:拆分的数量:1”创建输入分割(HADOOP)
也就是说,它正在考虑2块作为一个单一的分割,所以我环顾四周,发现下式用于计算所述分割尺寸,该尺寸如下:
分割尺寸= MAX(最小尺寸,分钟(MAXSIZE,块大小))
其中minsize = mapreduce.input.fileinputformat.split.minsize和maxsize = minsize = mapreduce.input.fileinputformat.split.maxsize。
现在在我的MR代码我设置以下属性:
Configuration conf = new Configuration()
conf.set("mapreduce.input.fileinputformat.split.minsize","1")
conf.set("mapreduce.input.fileinputformat.split.maxsize","134217728")
即MINSIZE = 1个字节和MAXSIZE = 128 MB,所以根据下式分割大小应该是36MB,因此两个裂口应在那里,但我仍得到相同的计数器输出为:
“信息mapreduce.JobSubmitter:拆分的数量:1”
任何人都可以解释,为什么?
它是什么类型的文件? –
这是一个.csv文件@BinaryNerd – User9523