昨天使用hadoop跑五一的數據,發現報錯:sql
Container [pid=47660,containerID=container_1453101066555_4130018_01_000067] is running beyond physical memory limits. Current usage: 2.0 GB of 2 GB physical memory used; 2.6 GB of 40 GB virtual memory used. Killing container.
發現是內存溢出了,遇到這種問題首先要判斷是map階段溢出仍是reduce階段溢出,而後分別設置其內存的大小,好比:oop
在運行hive sql前加上 : (map) set mapreduce.map.memory.mb=2048 或者 (reduce) set mapreduce.reduce.memory.mb=2048
由於默認值都是:1024M,也就是一個G,若是不夠就會溢出!spa