尝试从 hadoop-mapreduce-examples-2.2.0.jar
,我得到以下异常:
org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.yarn.exceptions.InvalidResourceRequestException): Invalid resource request, requested memory < 0, or requested memory > max configured, requestedMemory=1536, maxMemory=512
不确定1536来自何处,但512是我为中的子任务设置的最大堆大小 mapred-site.xml
:
<property>
<name>mapreduce.map.memory.mb</name>
<value>512</value>
</property>
<property>
<name>mapreduce.map.java.opts</name>
<value>-Xmx410m</value>
</property>
<property>
<name>mapreduce.reduce.memory.mb</name>
<value>512</value>
</property>
<property>
<name>mapreduce.reduce.java.opts</name>
<value>-Xmx410m</value>
</property>
确定map/reduce任务大小的正确方法是什么?
1条答案
按热度按时间baubqpgj1#
512是的默认值
yarn.scheduler.maximum-allocation-mb
在yarn-site.xml
,并且1536是yarn.app.mapreduce.am.resource.mb
中的参数mapred-site.xml
.确保
allocation-mb
>app.mapreduce.am.resource.mb
,一切都会好起来的。