Hadoop概要
一、Hadoop简介
1.Hadoop是Apache基金会所维护的分布式系统的基础框架
2.主要解决海量的数据存储和海量的数据分析计算问题
3.广义上来说,Hadoop通常是指一个更加广泛的概念–Hadoop生态圈
二、Hadoop优势
1.高可靠性:其底层维护多个数据副本,所以即使其中某个计算元素或存储出现故障,也不会导致数据的损失
2.高扩展性:在各个集群间分配任务数据,可以方便扩展
3.高效性:在MapReduce的思想下,Hadoop是并行工作的,可以加快任务的处理速度
4.高容错性:能够自动将失败的任务重新分配
三、Hadoop组成
这里所说的是Hadoop2.x
MapReduce(计算)
Yarn(资源调度)
HDFS(数据存储)
Common(辅助工具)
1.HDFS架构
**1>NameNode(NN):**存储文件的元数据,如文件名,文件目录,文件属性,以及每个文件的块列表和所在的DataNode等.
**2>DataNode(DN)😗*在本地文件系统存储文件块数据,以及块数据的校验和.
**3>Secondary NameNode(2NN)😗*用来监视HDFS状态的辅助后台程序.
2.YARN架构
调度内存和CPU 资源池 多个机器资源做统一调度
1>RecouceManger (RM):
(1)处理客户端请求的作业提交
(2)监控NodeManger
(3)启动或监控ApplicationMaster
(4)资源的分配和调度
2>NodeManger(NM):
(1)管理单个节点上的资源(管理自己机器的资源,并把信息报给RM)
(2)处理来自RM的命令
(3)处理来自AM的命令
3>ApplicationMaster(AM):
(1)负责数据的切分
(2)为应用程序申请资源并分配给内部任务(跑任务时的推进者,由AM估算客户端任务需要多少资源,然后向RM申请资源,RM告诉每个NM执行启动Container,RM以Container形式划分给AM,AM再进行资源的处理)
(3)任务的监控与容错
4>Container:
是Yarn上的资源抽象,封装了某个节点上的维度资源,如内存,cpu,网络等.(单位,一种容器)
3.MapReduce架构
MapReduce将计算分为两个阶段,Map和Reduce.
(1)Map阶段并行处理输入的数据.
(2)Reduce阶段对Map结果进行汇总.