当我设置mapreduce.task.io.sort.mb = 100000时。我得到以下异常。
java.lang.Exception: java.io.IOException: Invalid "mapreduce.task.io.sort.mb": 100000
mapreduce.task.io.sort.mb的最大值是什么?
答案 0 :(得分:8)
我意识到这个问题已经过时了,但对于那些提出同样问题的人,你可以查看一下这个值被限制的一些错误
BUG-12005:Mapreduce.task.io.sort.mb上限为2047.
问题:mapreduce.task.io.sort.mb被硬编码为不允许大于2047的值。如果输入的值大于此值,则map任务将始终在此行崩溃:
答案 1 :(得分:1)
hadoop-2.6.0 org.apache.hadoop.mapred.MapTask.java
答案 2 :(得分:0)
" mapreduce.task.io.sort.mb"是排序文件时使用的缓冲区内存总量,以兆字节为单位。默认情况下,为每个合并流提供1MB,这应该最小化搜索。因此,您需要确保群集节点上有100000 MB可用内存。
答案 3 :(得分:0)
默认情况下为100MB,最高可达2047 MB。