04 Hadoop思想与原理

1.X,2.X区别:
从HDFS角度来看:

1:Hadoop2.0新增了HDFS HA机制,HA增加了standbynamenode进行热备份,解决了1.0的单点故障问题。

2:Hadoop2.0新增了HDFS federation,解决了HDFS水平可扩展能力。

允许有多个namenode独立运行组成联邦。每个datanode向所有name进行注册。

每个namenode维护一个命名空间卷(互相独立)上层通过一个挂载表组织来访问数据。

命名空间卷:包括池块和命名空间元数据

块池:逻辑概念,该命名空间文件的所有块;可能在不同机器上。

命名空间元数据:命名空间元数据

这两个特性会在之后的文章中提到。

从mapreduce角度来看:

2.0相比于1.0 新增了YARN框架,Mapreduce的运行环境发生了变化

在1.0中:由一个JobTracker和若干个TaskTracker两类服务组成,其中JobTracker负责资源管理和所有作业的控制,TaskTracker负责接收来自JobTracker的命令并执行它。所以MapReduce即是任务调度框架又是计算框架,1.0中会出现JobTracker大包大揽任务过重,而且存在单点故障问题,并且容易出现OOM问题,资源分配不合理等问题。

在2.0中:MASTER端由ResourceManager进行资源管理调度,有ApplicationMaster进行任务管理和任务监控。SLAVE端由NodeManager替代TaskTracker进行具体任务的执行,所以MapReduce2.0只是一个计算框架,具体资源调度全部交给Yarn框架。

 

2.X和3.X最主要区别:
1:Java运行环境升级为1.8;

2:HDFS支持纠删码:

纠删码相比于副本机制节省了一半以上的存储空间,普通副本机制需要3倍存储空间而这种机制只需1.4倍即可。

3::YARN时间线服务:

4:支持多余2个以上的NameNodes

3.0支持单active namenode+多standby namenode部署方式进一步提升了可用性。

5:MapReduce本地优化,性能提升了30%。

posted @ 2021-10-21 23:03  芜湖湖  阅读(20)  评论(0编辑  收藏  举报