- Hadoop最早起源于Nutch。Nutch的设计目标是构建一个大型的全网搜索引擎,包括网页 抓取、索引、查询等功能,但随着抓取网页数量的增加,遇到了严重的可扩展性问题—如何解决数十亿网页的存储和索引问题。
- 2003年、2004年谷歌发表的两篇论文为该问题提供了可行的解决方案。
- Nutch的开发人员完成了相应的开源实现HDFS和MAPREDUCE,并从Nutch中剥离成为独 立项目HADOOP,到2008年1月,HADOOP成为Apache顶级项目.
狭义上来说,hadoop就是单独指代hadoop这个软件
- HDFS :分布式文件系统
- MapReduce : 分布式计算系统
- Yarn:分布式样集群资源管理
广义上来说,hadoop指代大数据的一个生态圈,包括很多其他的软件
![](https://img.haomeiwen.com/i13369429/47315747db7d98d3.jpg)
hadoop的架构模型
1.x的版本架构模型介绍
![](https://img.haomeiwen.com/i13369429/bc75b0186a7330e4.jpg)
文件系统核心模块:
NameNode
:集群当中的主节点,管理元数据(文件的大小,文件的位置,文件的权限),主要 用于管理集群当中的各种数据
SecondaryNameNode
:主要能用于hadoop当中元数据信息的辅助管理
DataNode
:集群当中的从节点,主要用于存储集群当中的各种数据
数据计算核心模块:
JobTracker
:接收用户的计算请求任务,并分配任务给从节点
TaskTracker
:负责执行主节点JobTracker分配的任务
2.x的版本架构模型介绍
第一种:NameNode与ResourceManager单节点架构模型
![](https://img.haomeiwen.com/i13369429/48e7737b57c907ca.jpg)
文件系统核心模块:
NameNode
:集群当中的主节点,主要用于管理集群当中的各种数据
SecondaryNameNode
:主要能用于hadoop当中元数据信息的辅助管理
DataNode
:集群当中的从节点,主要用于存储集群当中的各种数据
数据计算核心模块:
ResourceManager
:接收用户的计算请求任务,并负责集群的资源分配
NodeManager
:负责执行主节点APPmaster分配的任务
第二种:NameNode单节点与ResourceManager高可用架构模型
![](https://img.haomeiwen.com/i13369429/08dbc9212eb1d3a1.jpg)
文件系统核心模块:
NameNode
:集群当中的主节点,主要用于管理集群当中的各种数据
secondaryNameNode
:主要能用于hadoop当中元数据信息的辅助管理
DataNode
:集群当中的从节点,主要用于存储集群当中的各种数据
数据计算核心模块:
ResourceManager
:接收用户的计算请求任务,并负责集群的资源分配,以及计算任务的划 分,通过zookeeper实现ResourceManager的高可用
NodeManager
:负责执行主节点ResourceManager分配的任务
第三种:NameNode高可用与ResourceManager单节点架构模型
![](https://img.haomeiwen.com/i13369429/72d1552475234bb1.jpg)
文件系统核心模块:
NameNode
:集群当中的主节点,主要用于管理集群当中的各种数据,其中nameNode可以有 两个,形成高可用状态
DataNode
:集群当中的从节点,主要用于存储集群当中的各种数据
JournalNode
:文件系统元数据信息管理
数据计算核心模块:
ResourceManager
:接收用户的计算请求任务,并负责集群的资源分配,以及计算任务的划分
NodeManager
:负责执行主节点ResourceManager分配的任务
第四种:NameNode与ResourceManager高可用架构模型
![](https://img.haomeiwen.com/i13369429/6b4e2443e1ec03ec.jpg)
文件系统核心模块:
NameNode
:集群当中的主节点,主要用于管理集群当中的各种数据,一般都是使用两个,实 现HA高可用
JournalNode
:元数据信息管理进程,一般都是奇数个
DataNode
:从节点,用于数据的存储 数据计算核心模块:
ResourceManager
:Yarn平台的主节点,主要用于接收各种任务,通过两个,构建成高可用
NodeManager
:Yarn平台的从节点,主要用于处理ResourceManager分配的任务
网友评论