标签:namenode 分布 结构 调度 mon 其它 hive http 一段
hadoop是一个由Apache基金会所开发的分布式系统基础架构,hdfs分布式文件存储、MapReduce并行计算。主要是用来解决海量数据的存储和海量数据的分析计算问题,这是狭义上的hadoop。广义上来讲,hadoop通常指的是一个更广泛的概念--hadoop生态圈

hadoop三大发型版本:Apache、Cloudera、Hortonworks
Apache版本,也成为社区版,是最原始的版本,对入门学习较好Cloudera版本在大型互联网企业中用的较多,是对社区版进行了封装,主要是解决了和其它大数据组件(比如:hive)的兼容性问题。但是出了问题帮你解决要收费Hortonworks版本文档较好公司一般更常用的是Cloudera版本的hadoop,另外Cloudera版本的hadoop也简称为CDH。
1)高可靠性:hadoop底层维护多个数据副本,所以即使某个机器出现故障,也不会导致数据的丢失。
比如我现在有1G的数据,要存在5台机器上,hadoop默认会先将整个数据进行切割,默认是128M/块,当然这个数值也可以自己改。然后是以三副本进行存储,也就是说每个128M的块,都会被存储三份在不同的机器上。这样即使一台服务器宕机了,数据也不会丢失。

2)高扩展性:在集群间分配任务数据,可方便的扩展数以千计的节点。很好理解,如果容量不够了,直接横向扩展,加机器就行。
3)高效性:在MapReduce的思想下,hadoop是并行工作的,以加快任务处理速度。实际上如果学了spark,会发现hadoop自己所描述的易用性、高效性实在是不敢恭维哈。但是hadoop作为大数据生态圈中非常重要的组件,我们是有必要学好的,而且学了hadoop之后,再学spark会轻松很多。而且学习了hadoop,再学spark也会明白为什么spark会比hadoop在效率上高出几十倍、甚至上百倍。
4)高容错性:能够自动将失败的任务重新分配,如果某台机器挂掉了,那么会自动将任务分配到其他的机器上执行

hadoop的组成上面已经说了,主要由四部分组成,但是哪个common,我们一般不用管。因此从下往上只需要关注,hdfs,yarn,MapReduce即可。
hdfs
hdfs:hadoop distributed file system,hadoop分布式文件系统,它由哪几部分组成呢?
1.NameNode(nn):存储文件的元数据,如文件名,文件目录结构,文件属性(生成时间、副本数、文件权限),以及每个文件的块列表和块所在的DataNode等等。
2.DataNode(dn):真正用来存储文件块数据以及块数据的校验和,之前说了大文件是要分成多块的,每一块存在不同的DataNode节点(说白了就是服务器、或者电脑)上,每一个节点存储了哪些文件、以及文件被切分了几份都存在哪些DataNode上、文件名、属性等等,这些都叫做元数据,统一交给NameNode管理,而DataNode只负责真正的存储数据。
3. Secondary NameNode(2nn):用来监控hdfs状态的后台辅助程序,每个一段时间获取hdfs元数据的快照。
yarn

图中有一个Resource?Manager和三个Node?Manager,相当于有四个节点。
Resource Manager
1.处理客户端请求。客户端想访问集群,比如提交一个作业,要经过Resource Manager,它是整个资源的管理者,管理整个集群的CPU、内存、磁盘
2.监控Node Manager
3.启动或监控Application Master
4.资源的分配和调度
Node Manager
1.管理单个节点上的资源,Node Manager是当前节点资源的管理者,当然需要跟Resource Manager汇报
2.处理来自Resource Manager的命令
3.处理来自Application Master的命令
Application Master
1.某个任务的管理者。当任务在Node Manager上运行的时候,就是由Application Master负责管理
2.负责数据的切分
3.为应用程序申请资源并分配给内部的任务
4.任务的监控与容错
Container
Container是yarn中资源的抽象,它封装了节点上的多维度资源,如内存、CPU、磁盘、网络等等。
其实Container是为Application Master服务的,因为任务在运行的时候,是不是需要内存、cpu,这些资源都被虚拟化到Container里面了。
MapReduce
1. map阶段并行处理输入数据
2. reduce阶段对map结果进行汇总






标签:namenode 分布 结构 调度 mon 其它 hive http 一段
原文地址:https://www.cnblogs.com/traditional/p/11625341.html