今天用hive跑任务,一个小问题困扰了许久,问题如下:

大概意思是超出了虚拟内存限制,

我的机器是4g内存、8g虚拟内存,按理说不应该出现这个问题,由于宿主机有32g内存,

1、我先尝试把虚拟机的内存翻倍至8g,结果还是有这个错误;

2、于是针对linux的虚拟内存进行更改,将虚拟机的虚拟内存从8g调整到16g,发现问题依然没有解决;

3、最后研究出有通过更改配置的方式解决这个错误。

在hadoop的mapred-site.xml文件中更改配置文件:

方法二:

增大hadoop的虚拟内存大小,我通过增加linux的虚拟内存,依然报错,通过在配置文件中更改这个参数后,任务成功跑起来了,猜测hadoop应该是有自己的一套配置,没有直接用宿主机的linux,需要单独配置