我认为这是一个非常基本的问题,但是为了清楚起见,我有几个问题可以请任何人澄清?
>在Hadoop整个集群(第1代和第2代)上有多少个JVM运行?
>例如,如果我有10个节点集群,则应该为单个节点以及整个10个节点集群运行的JVM的最大或最小数量是多少?
>我们可以在运行时控制在JVM上的创建吗?假设我有更多的JVM,是否可以快速处理我的数据,可以重用同一个JVM,还是需要在作业完成后立即销毁它(JVM生命周期的任何图表?).
> JVM如何准确创建并在Hadoop中使用. Hadoop在hadoop集群中的重要作用是什么(尽管一切都在JVM上运行).
解决方法:
将JVM视为可以在其上运行基于Java的服务的抽象计算机.要回答您的问题,请:
Hadoop 1.0
There were total 4 services NameNode,SecondaryNameNode, Datanode, JobTracker, and TaskTracker.Each service runs on a JVM. 4 JVMs for
NameNode,SecondaryNameNode, Datanode, JobTracker each.A TaskTracker is a service in the cluster that accepts tasks – Map, Reduce and Shuffle operations – from a JobTracker.The TaskTracker
spawns a separate JVM processes to do the actual work.Assuming there is only one slot available with tasktracker to do the actual work i.e running mapper or reducer.
Therefore, total number of JVMs = NameNode(1) + SecondaryNameNode(1) + Datanode(1) + JobTracker(1) + TaskTracker(2) =
6Hadoop 2.0
Total services- Namenode,SecondaryNameNode, Resource Manager(ResourceManager,ApplicationManager and Scheduler), Node
Manager(ApplicationMaster and Container), Datanode1 JVM for each service, hence:-
Namenode(1) +SecondaryNameNode(1) + ResourceManager(1) +ApplicationManager(1) + Scheduler(1) + Node Manager(1) +ApplicationMaster(1) +Container(1) + Datanode(1) = 9
>
处理是在容器(JVM)上执行的,而节点管理器(JVM)负责这些操作.每个yarn应用程序都需要自己的
ApplicationMaster(JVM)2)第一点描述了JVM的最小数量.我们无法确定地说出最大数量,因为您可以继续在集群中添加存储和工作节点,因此JVM的数量将会增加.
3)如果集群中有更多资源,则可以运行多个JVM,这样就可以运行更多的存储(数据节点)和处理(节点管理器和容器)服务.是的,您可以通过配置属性mapred.job.reuse.jvm.num.tasks来控制JVM重用
4)由于hadoop框架的所有服务仅在JVM上运行,因此JVM是必不可少的.您无法创建JVM,而操作系统会为您创建JVM.您只需要启动JVM进程即可.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。