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點導致的)