Hadoop 2.x与3.x 22点比较,Hadoop 3.x比2.x的改进
问题导读
1.hadoop3.x通过什么方式来容错?
2.hadoop3.x存储开销减少了多少?
3.hadoop3.x mr api是否兼容hadoop1.x?
一、目的
在这篇文章中,我们将讨论hadoop 2.x与hadoop 3.x之间的比较。 hadoop3版本中添加了哪些新功能,hadoop3中兼容的hadoop 2程序,hadoop 2和hadoop 3有什么区别?
二、hadoop 2.x与hadoop 3.x比较
本节将讲述hadoop 2.x与hadoop 3.x之间的22个差异。 现在让我们逐一讨论
2.1license
hadoop 2.x - apache 2.0,开源
hadoop 3.x - apache 2.0,开源
2.2支持的最低java版本
hadoop 2.x - java的最低支持版本是java 7
hadoop 3.x - java的最低支持版本是java 8
2.3容错
hadoop 2.x - 可以通过复制(浪费空间)来处理容错。
hadoop 3.x - 可以通过erasure编码处理容错。
2.4数据平衡
hadoop 2.x - 对于数据平衡使用hdfs平衡器。
hadoop 3.x - 对于数据平衡使用intra-data节点平衡器,该平衡器通过hdfs磁盘平衡器cli调用。
2.5存储scheme
hadoop 2.x - 使用3x副本scheme
hadoop 3.x - 支持hdfs中的擦除编码。
2.6存储开销
hadoop 2.x - hdfs在存储空间中有200%的开销。
hadoop 3.x - 存储开销仅为50%。
2.7存储开销示例
hadoop 2.x - 如果有6个块,那么由于副本方案(scheme),将有18个块占用空间。
hadoop 3.x - 如果有6个块,那么空间9个块,中6块空间,3块用于奇偶校验。
2.8yarn时间线服务
hadoop 2.x - 使用具有可伸缩性问题的旧时间轴服务。
hadoop 3.x - 改进时间线服务v2并提高时间线服务的可扩展性和可靠性。
2.9默认端口范围
hadoop 2.x - 在hadoop 2.0中,一些默认端口是linux临时端口范围。所以在启动时,他们将无法绑定。
hadoop 3.x - 但是在hadoop 3.0中,这些端口已经移出了短暂的范围。
2.10工具
hadoop 2.x - 使用hive,pig,tez,hama,giraph和其他hadoop工具。
hadoop 3.x - 可以使用hive,pig,tez,hama,giraph和其他hadoop工具。
2.11兼容的文件系统
hadoop 2.x - hdfs(默认fs),ftp文件系统:它将所有数据存储在可远程访问的ftp服务器上。 amazon s3(简单存储服务)文件系统windows azure存储blob(wasb)文件系统。
hadoop 3.x - 它支持所有前面以及microsoft azure data lake文件系统。
2.12datanode资源
hadoop 2.x - datanode资源不专用于mapreduce,我们可以将它用于其他应用程序。
hadoop 3.x - 此处数据节点资源也可用于其他应用程序。
2.13mr api兼容性
hadoop 2.x - 与hadoop 1.x程序兼容的mr api,可在hadoop 2.x上执行
hadoop 3.x - 此处,mr api与运行hadoop 1.x程序兼容,以便在hadoop 3.x上执行
2.14支持microsoft windows
hadoop 2.x - 它可以部署在windows上。
hadoop 3.x - 它也支持windows。
2.15插槽/容器
hadoop 2.x - hadoop 1适用于插槽的概念,但hadoop 2.x适用于容器的概念。通过容器,我们可以运行通用任务。
hadoop 3.x - 它也适用于容器的概念。
2.16单点故障
hadoop 2.x - 具有spof的功能,因此只要namenode失败,它就会自动恢复。
hadoop 3.x - 具有spof的功能,因此只要namenode失败,它就会自动恢复,无需人工干预就可以克服它。
2.17hdfs联盟
hadoop 2.x - 在hadoop 1.0中,只有一个namenode来管理所有namespace,但在hadoop 2.0中,多个namenode用于多个namespace。
hadoop 3.x - hadoop 3.x还有多个名称空间用于多个名称空间。
2.18可扩展性
hadoop 2.x - 我们可以扩展到每个群集10,000个节点。
hadoop 3.x - 更好的可扩展性。 我们可以为每个群集扩展超过10,000个节点。
2.19更快地访问数据
hadoop 2.x - 由于数据节点缓存,我们可以快速访问数据。
hadoop 3.x - 这里也通过datanode缓存我们可以快速访问数据。
2.20hdfs快照
hadoop 2.x - hadoop 2增加了对快照的支持。 它为用户错误提供灾难恢复和保护。
hadoop 3.x - hadoop 2也支持快照功能。
2.21平台
hadoop 2.x - 可以作为各种数据分析的平台,可以运行事件处理,流媒体和实时操作。
hadoop 3.x - 这里也可以在yarn的顶部运行事件处理,流媒体和实时操作。
2.22群集资源管理
hadoop 2.x - 对于群集资源管理,它使用yarn。 它提高了可扩展性,高可用性,多租户。
hadoop 3.x - 对于集群,资源管理使用具有所有功能的yarn。
hadoop3.x比hadoop2.x的改进
common主要改进:
shell script rewrite
过时api删除
hdfs改进:
支持erasure编码
支持超过两个namenode
数据均衡
多个服务端口发生变化
yarn改进:
yarn timeline service v.2
support for opportunistic containers and distributed scheduling
maprduece改进:
mapreduce task-level native optimization
reworked daemon and task heap management
其他新特性:
shared client jars
三、结论
正如我们已经讨论了hadoop 2.x与hadoop 3.x之间的22个重要差异和3.x的改进,现在我们可以看到hadoop 2和hadoop 3哪个更好。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对的支持。如果你想了解更多相关内容请查看下面相关链接