1、。。。。running beyond physical memory limits. Current usage: 2.0 GB of 2 GB physical memory used; 3.9 GB of 16 GB virtual memory used. Killing container.(物理内存使用超过了上限)
2、。。。running beyond virtual memory limits. Current usage: 1.0 GB of 2 GB physical memory used; 16.3 GB of 16 GB virtual memory used. Killing container.(虚拟内存使用超过了上限)
上述两个值的设置:可了解
-
set yarn.nodemanager.vmem-pmem-ratio;
- yarn.nodemanager.vmem-pmem-ratio=2.1;
这种可优先检查
1、参数设置是否合理,如:
set mapred.child.java.opts=-Xmx2048m;
set mapreduce.map.memory.mb=2048;
set mapreduce.reduce.memory.mb=2048;
2、代码或者sql是否还有优化空间
3、集群配置(通常这块调优好了,报上面的错误概率低,通常是由上面1、2点导致的)