我已经搜索了一段时间,发现使用MapReduce + that的hadoop2集群具有以下多个并发映射并减少了每个节点:
并发映射#=yarn.nodemarager.Resoure.Memory-mb/ mapreduce.map.memory.mb并发减少#=yarn.nodemarager.Resoure.Memory-mb/ mapreduce.reduce.memory.mb
但是,我已经设置了一个具有10台机器的集群,具有以下配置:
'yarn_site' => {
'yarn.nodemanager.resource.cpu-vcores' => '32',
'yarn.nodemanager.resource.memory-mb' => '16793',
'yarn.scheduler.minimum-allocation-mb' => '532',
'yarn.nodemanager.vmem-pmem-ratio' => '5',
'yarn.nodemanager.pmem-check-enabled' => 'false'
},
'mapred_site' => {
'mapreduce.map.memory.mb' => '4669',
'mapreduce.reduce.memory.mb' => '4915',
'mapreduce.map.java.opts' => '-Xmx4669m',
'mapreduce.reduce.java.opts' => '-Xmx4915m'
}但是在集群建立之后,hadoop允许为整个集群提供6个容器。我忘了什么?我做错了什么?
发布于 2015-03-20 18:01:30
不确定这是否与您遇到的问题相同,但我也遇到了类似的问题,我在核心实例组中启动了一个由20个节点组成的EMR集群,并同样发现集群在运行作业时被严重地利用不足(整个集群中只有30个映射器同时运行,尽管内存/vcore在我的特定集群中透露了纱线和MapReduce,显示超过500个并发容器可以运行)。我在AMI 3.5.0上使用Hadoop2.4.0。
事实证明,由于某种原因,实例组很重要。当我重新启动集群时,任务实例组中有20个节点,而只有一个核心节点,这就产生了巨大的差异。我克服了并发运行的500+映射器(在我的例子中,映射器主要是从S3下载文件,因此不需要HDFS)。
我不知道为什么不同的实例组类型会产生不同的效果,因为两者都可以同样地运行任务,但显然它们被不同的对待。
我想我应该在这里提及它,因为我自己遇到了这个问题,并且使用了另一种类型的帮助。
https://stackoverflow.com/questions/24414748
复制相似问题