hadoop2的产生背景

Hadoop1的HDFS和Mapreduce在高可用和拓展性方面存在问题。

HDFS存在的问题:

Namenode单点故障,难以应用于在线场景。

Namenode压力过大,且内存受限,影响系统扩展性。

Mapreduce存在问题:

Jobtracker单点故障

Jobtracker压力过大,影响拓展性

难以支持Mapreduce之外的计算框架,如果storm,spark,Tez等。

Hadoop2由Mapreduce,HDFS和yarn三分部构成

HDFS:NN Federation HA

Mapreduce:在yarn上运行的MR

Yarn:资源管理系统

Hadoop2是如何解决Hadoop1的问题的

1:HDFS2

解决HDFS1的单点故障和内存受限问题:

a:解决单点故障

HDFS HA:通过主备Namenode切换来解决,如果主Namenode发生故障,则就切换到备Namenode上。(有了这样的优点以后,系统升级也变得更加方便)。

详细过程:主Namenode对外提供服务,被Namenode同步Namenode元数据,以待切换。所有datanode块同时向两个Namenode汇报数据块信息。

切换Namenode有两种选择,一种是手动切换,一种是自动切换。

手动切换:主要使用命令来实现切换,主要适用于系统升级的场合。

自动切换:是基于zookeeper实现的,zookeeper failover controller监控Namenode健康状态

并向zookeeper注册Namenode,Namenode挂掉后,ZKFC为Namenode竞争锁,获得ZKFC的Namenode成为active namenode。

b:解决内存受限问题

HDFS Federation(联邦),水平拓展,支持多个Namenode,每个Namenode分管一部分目录。所有Namenode共享所有Datanode存储资料。

注意:仅仅是架构上面发生了变换,其他使用方式不变。

2:Mapreduce2

Mapreduce的改变就是yarn的改变,那么YARN到底是怎么一回事,下篇博客说明。

你可能感兴趣的:(hadoop2的产生背景)