java—ApacheHadoop2.7.x中容器堆和jvm堆之间的混淆

ykejflvf  于 2021-05-31  发布在  Hadoop
关注(0)|答案(0)|浏览(171)

我已经用3个worker配置了ApacheHadoop2.7.x。我遇到过一些例外,比如

java.lang.OutOfMemoryError: GC overhead limit exceeded

经过一番搜索,我发现应该增加jvm堆的大小。为此,hadoop中有三个参数,即 1. mapred.child.java.opts , 2. mapreduce.map.java.opts , 3. mapreduce.reduce.java.opts . 据我所知,最后两个参数是mapreducejvm,即我创建的运行在hadoop上的jar。我将这些参数设置为 mapreduce.map.memory.mb 以及 mapreduce.reduce.memory.mb 分别。
现在的问题是我可以设置的最大值 mapred.child.java.opts 以及它的用途。这是gc报告或Map/减少堆的问题吗。
另外,在资源(特别是内存)的上下文中,map reduce jvm与容器之间的关系是什么。我能给的最大值是多少 mapred.child.java.opts 以与…相似的方式 mapreduce.amp.java.opts ; 不应该再多了 mapreduce.map.memory.mb . 我已经看过一篇类似的文章,但不幸的是它不能澄清我的理解。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题