教育行业A股IPO第一股(股票代码 003032)

全国咨询/投诉热线:400-618-4000

大数据Hadoop版本介绍,1.0版本和2.0对比有哪些缺点?

更新时间:2021年04月14日17时32分 来源:传智教育 浏览次数:

传智教育-一样的教育,不一样的品质


Hadoop发行版本分为开源社区版和商业版,社区版是指由Apache软件基金会维护的版本,是官方维护的版本体系。商业版Hadoop是指由第三方商业公司在社区版Hadoop基础上进行了一些修改、整合以及各个服务组件兼容性测试而发行的版本,例如比较著名的有Cloudera公司的CDH版本。


为了方便学习,本书采用开源社区版,而Hadoop自诞生以来,主要分为Hadoop1、Hadoop2、Hadoop3三个系列的多个版本。由于目前市场上最主流的是Hadoop2.x版本,因此,本书只针对Hadoop2.x版本进行相关介绍。

Hadoop2.x版本指的是第2代Hadoop,它是从Hadoop1.x发展而来的,并且相对于Hadoop1.x来说,有很多改进。下面我们从Hadoop1.x到Hadoop2.x发展的角度,对两版本进行讲解,如图1所示。

大数据Hadoop版本介绍,1.0版本和2.0对比有哪些缺点?

 图1 Hadoop版本内核演变

通过图1可以看出,Hadoop1.0内核主要由分布式存储系统HDFS和分布式计算框架MapReduce两个系统组成,而Hadoop2.x版本主要新增了资源管理框架Yarn以及其他工作机制的改变。

在Hadoop1.x版本中,HDFS与MapReduce结构如图2和3所示。

大数据Hadoop版本介绍,1.0版本和2.0对比有哪些缺点?

图2 HDFS组成结构
大数据Hadoop版本介绍,1.0版本和2.0对比有哪些缺点?

​ 图3 MapReduce组成结构

从图2可以看出,HDFS由一个NameNode和多个DateNode组成,其中,DataNode负责存储数据,但是数据具体存储到哪个DataNode节点,则是由NameNode来决定的。

从图3可以看出MapReduce由一个JobTracker和多个TaskTracker组成,其中,MapReduce的主节点JobTracker只有一个,从节点TaskTracker有很多个,JobTracker与TaskTracker在MapReduce中的角色就像是项目经理与开发人员的关系,而JobTracker负责接收用户提交的计算任务、将计算任务分配给TaskTracker执行、跟踪,JobTracker同时监控TaskTracker的任务执行状况等。当然,TaskTracker只负责执行JobTracker分配的计算任务,正是由于这种机制,Hadoop1.x架构中的HDFS和MapReduce存在以下缺陷:

(1)HDFS中的NameNode、SecondaryNode单点故障,风险是比较大的。其次,NameNode内存受限不好扩展,因为Hadoop1.x版本中的HDFS只有一个NameNode,并且要管理所有的DataNode。

(2)MapReduce中的JobTracker职责过多,访问压力太大,会影响系统稳定。除此之外,MapReduce难以支持除自身以外的框架,扩展性较低的不足。


Hadoop2.x版本为克服Hadoop1.x中的不足,对其架构进行了以下改进:

(1)Hadoop2.x可以同时启动多个NameNode,其中一个处于工作(Active)状态,另一个处于随时待命(Standby)状态,这种机制被称为Hadoop HA(Hadoop高可用),这样当一个NameNode所在的服务器宕机时,可以在数据不丢失的情况下,自动切换到另一个NameNode持续提供服务。

(2)Hadoop2.x将JobTracker中的资源管理和作业控制分开,分别由ResourceManager(负责所有应用程序的资源分配)和ApplicationMaster(负责管理一个应用程序)实现,即引入了资源管理框架Yarn,它是一个通用的资源管理框架,可以为各类应用程序进行资源管理和调度,不仅限于MapReduce一种框架,也可以为其他框架使用,如Tez、Spark、Storm,这种设计不仅能够增强不同计算模型和各种应用之间的交互,使集群资源得到高效利用,而且能更好地与企业中已经存在的计算结构集成在一起。

(3)Hadoop2.x中的MapReduce是运行在Yarn上的离线处理框架,它的运行环境不再由JobTracker和TaskTracker等服务组成,而是变成通用资源管理Yarn和作业控制进程ApplicationMaster,从而使MapReduce在速度上和可用性上都有很大的提高。



猜你喜欢:

如何远程登录Hadoop虚拟机和开启SSH服务?

Hadoop安装教程,8大安装目录的内容和作用分别是什么?

大数据Hadoop生态圈包含哪些子系统?

传智教育大数据培训

0 分享到:
和我们在线交谈!