Hadoop2.x较Hadoop1.x来说,变化非常大,主要主要体现在Hadoop2.x引入了“Yarn”这个核心部件。
hadoop1.x有两大部件,HDFS和MadpReduce,其中HDFS(Hadoop Distributed Files System)用于分布式存储文件,便于集群中各机器从上面读取和写入文件(数据),MadpReduce则是Hadoop的两个核心进程,Map负责对数据块的分片,Reduce对Map进程出来的结果进行聚合,排序,写入到HDFS中。从上图中,对于hadoo1.x来说,HDFS和MapReduce是两个相互依赖的关系,而对于hadoop2.x,在HDFS和MapReduce之间增加了Yarn部件,这个暂且可以理解为是一个“管理平台”,MapReduce就变成了一个可插拔的“插件”,它不仅仅允许hadoo自身的部件使用,还允许其他的数据处理插件接入到hadoop的生态上,如spark。
首先,简单了解hadoop1.x的MapReduce工作原理: