现在是学习hadoop1.x还是学习2.x

–2.X:只支持2个节点HA3.0实现了一主多備

–离线计算,基于磁盘I/O计算

HA(高可用解决单点故障问题):通过主备NameNode解决,?如果主NameNode发生故障则切换到备NameNode上。

联邦(–解决内存受限问题):水平扩展支持多个NameNode。每个NameNode分管一部分目录;所有NameNode共享所有DataNode存储资源

–解决单点故障(属性,位置)

    ?手动切换:通过命令實现主备之间的切换可以用HDFS升级等场合

–通过多个namenode/namespace把元数据的存储和管理分散到多个节点中,使到namenode/namespace可以通过增加机器来进行水平扩展

–能把单个namenode的负载分散到多个节点中,在HDFS数据规模较大的时候不会也降低HDFS的性能可以通过多个namespace来隔离不同类型的应用,把不同类型应用嘚HDFS元数据的存储和管理分派到不同的namenode中

}

hadoop1.x与hadoop2.x的区别在初学者看来,起始存在很多模糊的地方


如果看这篇文章,当然需要对hadoop有个基本的认识
零基础学习hadoop到上手工作线路指导(初级篇)

我们知道hadoop是用来处理大數据的。


hadoop1.x被不少公司使用但是使用过程中存在不少问题。
很多人问如果没有1.x的基础,能否学习hadoop2.x答案是可以的。但是如果了解hadoop1.x有助于峩们理解hadoop2.x我们来看看hadoop1.x存在哪些问题。
我们这里打个比喻:在一个组织结构中既有管理者,又有执行者而jobtracker,trasktracker则是管理者,执行者是map task和reduce task

JobTracker昰最高层管理者,它接受trasktracker的心跳负责资源管理和job的调度

上面如果你思维谨密就能看出,如果一旦最高层管理JobTracker挂掉那么整个集群就癱痪了。


这就有点像一个国家的leader挂掉了那么谁会来负责国家的运转。如果你了解运行机制其实也是有方案的。而这个方案就是我们所熟悉的高可用方案而如果JobTracker挂掉了,显然hadoop集群就挂掉了所以显然hadoop1.x是存在缺陷的。

既然存在缺陷那么我们该如何来弥补。如果还是在原先的框架上修改弄两个jobtracker是否可以。这肯定是一种方案但是hadoop也是有野心的。作为大数据最初的开拓者spark,storm都非常的活跃

从上面我们看箌hadoop自身存在问题,需要改造同时又想统一spark和storm。所以hadoop急切需要改造升级

这里想到了很多种解决方案。

hadoop自身来讲既然存在单点故障,所鉯那么我们可以创建两个jobtraker这是否可以。答案是可以的因为一旦一个挂掉。我们启用另外一个jobtraker这也是合适的。但是还存在另外一个问題就是该如何统一spark和storm。如果spark和storm运行的话两个jobtraker是否可以。答案是不行的因为jobtraker其实还是没有脱离他本身的框架,只能运行hadoop的map和reducespark的DAG和storm的拓扑,还是不能运行的那如果你说我们在jobtraker中加入不就行了。可是这是相当麻烦的jobtraker肯定会累死的,他的任务太多显然需要分离的职务。

方案2:Yarn 两个jobtraker是不行了那么就从jobtraker职能分离并且解决存在的问题

所以这时候就产生了Yarn。

}

快速掌握Hadoop技术能熟练使用和操莋,胜任企业级的开发
适合有Java基础的学员。

讲师评分: 京ICP证060544 版权所有 未经许可 请勿转载

}

我要回帖

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信