Hadoop 和 Spark 生态系统中的核心组件
通过jps命令,可以看到如下进程名,请解释一下它们各自是哪个命令产生的,有什么作用?一、Worker
1.来源:Spark 集群的 工作节点(Worker Node),由 start-worker.sh
启动
2.作用:
①在从节点上运行,负责执行 Master 分配的任务。
②管理本地的计算资源(CPU、内存)。
③向 Master 汇报心跳和任务状态。
二、NodeManager
1.来源:Hadoop YARN 的 工作节点服务,由 start-yarn.sh
启动。
2.作用:
①管理单个节点上的资源(CPU、内存)。
②启动和监控容器(Container),运行 MapReduce 或 Spark 等任务。
③向 ResourceManager 汇报资源使用情况。
三、DataNode
1.来源:Hadoop HDFS 的 数据节点,由 start-dfs.sh
启动。
2.作用:
①实际存储 HDFS 的数据块。
②定期向 NameNode 汇报存储状态。
③处理客户端的读写请求。
四、Master
1.来源:Spark 集群的 主节点(Master Node),由 start-master.sh
启动
2.作用:
①管理 Spark 集群的资源调度。
②接收客户端提交的任务,分配给 Worker 执行。
③监控 Worker 节点的状态。
五、NameNode
1.来源:Hadoop HDFS 的 主节点,由 start-dfs.sh
启动。
2.作用:
①管理 HDFS 文件系统的元数据(如文件目录树、块位置)。
②协调 DataNode 存储和检索数据。
③单点故障关键组件(高可用模式下会有 Standby NameNode)。
六、JobHistoryServer
1.来源:Hadoop MapReduce 的 历史任务服务器,由 mr-jobhistory-daemon.sh start historyserver
启动。
2.作用:
①存储和展示已完成的 MapReduce 作业日志。
②提供 Web UI 查看历史任务详情(默认端口:19888)。
七、HistoryServer
1.来源:Spark 的 历史任务服务器,由 start-history-server.sh
启动。
2.作用:
①记录和展示已完成的 Spark 应用程序日志。
②提供 Web UI 查看历史任务(默认端口:18080)。