2017-08-10 46 views
0

我使用Hadoop 2.8和運行流招聘讀取100MB CSV並在其上進行登錄,但我得到了在控制檯錯誤:如何設置容器的物理限制在Hadoop中

Container [pid=20975,containerID=container_1502190583079_0006_01_000002] is running beyond physical memory limits. Current usage: 1.0 GB of 1 GB physical memory used; 1.7 GB of 2.1 GB virtual memory used. Killing container. 
Dump of the process-tree for container_1502190583079_0006_01_000002 : 

我不知道如何修復,任何人都可以幫忙,提前感謝。

回答

0

您應該將map/reduce的java.opts設置爲map/reduce容器內存的75%〜80%。如果還不行,增加map/reduce容器的內存。

配置在地圖/減少容器存儲器(mapred-site.xml中)

mapreduce.map.memory.mb: 1024 
    mapreduce.reduce.memory.mb: 2048 

配置在地圖的堆大小/減少java程序(mapred-site.xml中)

mapreduce.map.java.opts: -Xmx768m 
    mapreduce.reduce.java.opts: -Xmx1536m 

詳細你可以在這裏找到answer