请帮助我理解......我正在使用内存密集型算法(Mahout上的LDA)。因为它需要大量的内存,所以我使用了一个5节点的Hadoop cluser,每个都有24GB的RAM。
但是,运行算法时,我收到此错误: Container [pid = 14275,containerID = container_1458474415429_0004_01_000012]正在超出虚拟内存限制。当前用法:使用265.0 MB的1 GB物理内存;使用2.6 GB的2.1 GB虚拟内存。杀死容器。
帮助我理解这一点...... Hadoop如何分配内存?我应该如何设置环境以使用可用的最大内存?我相信Hadoop会把任务分解成更小的任务,因此每个人都使用更少的内存 - 然而,现在看起来很天真。