2012-02-17 47 views
1

当我使用bin/start-all.sh脚本启动hadoop时,它似乎为名称节点,数据节点,作业跟踪器和任务跟踪器启动不同的JVM。Hadoop产生多个虚拟机

此外,当我开始一份工作时,它似乎为每项工作都创建了另一个JVM。

hadoop是否有特定的原因。我理解它在多节点集群环境中的必要性,但即使在单个节点集群上也是如此。

有没有一种方法可以指定任何配置参数,在同一个JVM下运行一切?

回答

3

我还没有读过任何具体说明他们为什么这样做的内容,但是对于多个JVM,您可能会使用更多的物理RAM(取决于O/S)。你也会得到一些隔离。所以,如果你想改变一个组件的配置方式,你只需要重新启动一个组件。这并不意味着这是一个巨大的好处。另外,从实现的角度来看,以相同的方式执行操作可能更简单,而对于不同的设置则可能不是不同的逻辑。

OTOH,为什么不产生多个JVM?