我有一個大小爲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