【发布时间】:2012-11-06 23:23:31
【问题描述】:
假设我有一个 EMR 作业在 11 个节点的集群上运行:m1.small 主节点,而 10 个 m1.xlarge 从节点。
现在一个 m1.xlarge 节点有 15 GB 的 RAM。
然后如何决定可以设置的并行映射器和缩减器的数量?
我的工作是内存密集型的,我希望将越来越多的堆分配给 JVM。
另一个相关问题: 如果我们设置如下参数:
<property><name>mapred.child.java.opts</name><value>-Xmx4096m</value></property>
<property><name>mapred.job.reuse.jvm.num.tasks</name><value>1</value></property>
<property><name>mapred.tasktracker.map.tasks.maximum</name><value>2</value></property>
<property><name>mapred.tasktracker.reduce.tasks.maximum</name><value>2</value></property>
那么这 4GB 是由 4 个进程(2 个 mapper 和 2 个 reducer)共享还是每个进程都获得 4GB?
【问题讨论】:
标签: hadoop mapreduce elastic-map-reduce emr