我知道每个映射器都将其中间数据写入磁盘,然后减速器将其输出转储到磁盘。在mapreduce作业期间,数据是否还会溢出到磁盘?我在寻找任何可能的时间,即使不是在一份典型的工作中。
MR从HDFS获取输入,每个映射任务处理它,保存在内存中,如果超过默认的100MB(io.sort.mb),则它将拆分到磁盘。然后reducer将结果输出到HDFS而不是磁盘。有关更多详细信息,请查看链接,https://www.inkling.com/read/hadoop-definitive-guide-tom-white-3rd/chapter-6/shuffle-and-sort
您可以定义映射器将其输出溢出为的百分比
mapred.reduce.slowstart.comcompleted.maps在mapred-site.xml文件中。
这个可能会有所帮助!!