问答>python+大数据开发>hadoop1.x和hadoop2.x的区别是什么,做了哪些改进?
hadoop1.x和hadoop2.x的区别是什么,做了哪些改进?
来源传智教育2022年06月29日 14时39分35秒
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在速度上和可用性上都有很大的提高。