「1-Hadoop」:Hadoop框架概述(一)
Hadoop是什么
- Hadoop是一个由Apache基金会所开发的分布式系统基础架构。
- 主要解决,海量数据的存储和海量数据的分析计算问题。
- 广义上来说,Hadoop通常是指一个更广泛的概念——Hadoop生态圈。
Hadoop组成
在Hadoop1.x时代,Hadoop中的MapReduce同时处理业务逻辑计算以及资源调度,耦合性比较大,在Hadoop2.x以上增加了Yarn组件,只负责资源调度,MapReduce只负责运算。
HDFS架构概述
- NameNode(nn)
存储文件元数据,如文件名,文件目录结构等
- DataNode(dn)
在本地文件系统存储文件块数据,以及块数据的校验和。
- Secondary NameNode(2nn)
每隔一段时间对nn中的元数据进行备份,
Yarn架构概述
- ResourceManager(RM)
处理客户端请求
监控nodemanager
启动或者监控ApplicationMaster
资源的分配与调度
- NodeManager (NM)
管理单个节点上的资源
处理来自resourceManger的命令
处理来自ApplicationMaster的命令
- ApplicationMaster (AM)
负责数据的切分
为应用程序申请资源并分配给任务
任务的监控与容错
- Container
container是yarn资源的抽象,封装了某个节点多维度的资源,如内存,cpu,磁盘等。
MapReduce 架构概述
MapReduce将计算过程分为两个阶段:Map和Reduce
1)Map阶段并行处理输入数据
2)Reduce阶段对Map结果进行汇总