2-hadoop组成
hadoop组成
在hadoop1.x时代,hadoop中的MapReduce同时处理业务逻辑运算和资源的调度,耦合性较大;
在hadoop2.x时代,增加了yarn,yarn只负责资源的调度,MapReduce只负责运算
hdfs架构
hdfs架构包括三部分:NameNode(nm),DataNode(dm),Secondary NameNode(2nm)。
- NameNode:存储文件的元数据,如文件名,文件目录结构,文件属性,生成时间,副本数,文件权限以及每个文件的块列表和块所在的DataNode等信息。
- DataNode:在本地文件系统存储文件块数据,以及块数据的校验和。
- Secondary NameNode:用来监控hdfs状态的辅助后台程序,每隔一段时间获取hdfs元数据的快照
yarn架构
yarn架构包括四部分: ResourceManager(rm),NodeManager(nm),ApplicationMaster(am),Container。
- ResourceManager主要作用:
(1). 处理客户端请求
(2). 监控NodeManager
(3).启动或监控ApplicationMaster
(4).资源的分配与调度 - NodeManager主要作用:
(1). 管理单个节点上的资源
(2). 处理来自ResourceManager的命令
(3). 处理来自ApplicationMaster的命令 - ApplicationMaster主要作用:
(1). 负责数据的切分
(2). 为应用程序申请资源并分配给内部的任务
(3). 任务的监控与容错 - Container
container是yarn中的资源抽象,它封装了某个节点上的多维度资源,如CPU、内存、磁盘、网络等。
MapReduce架构
MapReduce将计算过程分为两个阶段:Map和Reduce。
- Map阶段并行处理输入数据
- Reduce阶段对Map结果进行汇总