hadoop2 VS hadoop3 功能对比

hadoop2 VS hadoop3 功能对比,第1张

1目的

在这篇文章中,我们将讨论Hadoop 2x与Hadoop 3x之间的比较。 Hadoop3版本中添加了哪些新功能,Hadoop3中兼容的Hadoop 2程序,Hadoop 2和Hadoop 3有什么区别? 我们希望Hadoop 2和Hadoop 3之间的这个功能的区别将帮助回答上述问题。

21License

Hadoop 2x - Apache 20,开源

Hadoop 3x - Apache 20,开源

22支持的最低Java版本

Hadoop 2x - java的最低支持版本是java 7

Hadoop 3x - java的最低支持版本是java 8

23容错

Hadoop 2x - 可以通过复制(浪费空间)来处理容错。

Hadoop 3x - 可以通过Erasure编码处理容错。

24数据平衡

Hadoop 2x - 对于数据,平衡使用HDFS平衡器。

Hadoop 3x - 对于数据,平衡使用Intra-data节点平衡器,该平衡器通过HDFS磁盘平衡器CLI调用。

25存储Scheme

Hadoop 2x - 使用3X副本Scheme

Hadoop 3x - 支持HDFS中的擦除编码。

26存储开销

Hadoop 2x - HDFS在存储空间中有200%的开销。

Hadoop 3x - 存储开销仅为50%。

27存储开销示例

Hadoop 2x - 如果有6个块,那么由于副本方案(Scheme),将有18个块占用空间。

Hadoop 3x - 如果有6个块,那么将有9个块占用6块空间,3个用于奇偶校验。

28YARN时间线服务

Hadoop 2x - 使用具有可伸缩性问题的旧时间轴服务。

Hadoop 3x - 改进时间线服务v2并提高时间线服务的可扩展性和可靠性。

29默认端口范围

Hadoop 2x - 在Hadoop 20中,一些默认端口是Linux临时端口范围。所以在启动时,他们将无法绑定。

Hadoop 3x - 但是在Hadoop 30中,这些端口已经移出了短暂的范围。

210工具

Hadoop 2x - 使用Hive,pig,Tez,Hama,Giraph和其他Hadoop工具。

Hadoop 3x - 可以使用Hive,pig,Tez,Hama,Giraph和其他Hadoop工具。

211兼容的文件系统

Hadoop 2x - HDFS(默认FS),FTP文件系统:它将所有数据存储在可远程访问的FTP服务器上。 Amazon S3(简单存储服务)文件系统Windows Azure存储Blob(WASB)文件系统。

Hadoop 3x - 它支持所有前面以及Microsoft Azure Data Lake文件系统。

212Datanode资源

Hadoop 2x - Datanode资源不专用于MapReduce,我们可以将它用于其他应用程序。

Hadoop 3x - 此处数据节点资源也可用于其他应用程序。

213MR API兼容性

Hadoop 2x - 与Hadoop 1x程序兼容的MR API,可在Hadoop 2X上执行

Hadoop 3x - 此处,MR API与运行Hadoop 1x程序兼容,以便在Hadoop 3X上执行

214支持Microsoft Windows

Hadoop 2x - 它可以部署在Windows上。

Hadoop 3x - 它也支持Microsoft Windows。

215插槽/容器

Hadoop 2x - Hadoop 1适用于插槽的概念,但Hadoop 2X适用于容器的概念。通过容器,我们可以运行通用任务。

Hadoop 3x - 它也适用于容器的概念。

216单点故障

Hadoop 2x - 具有SPOF的功能,因此只要Namenode失败,它就会自动恢复。

Hadoop 3x - 具有SPOF的功能,因此只要Namenode失败,它就会自动恢复,无需人工干预就可以克服它。

217HDFS联盟

Hadoop 2x - 在Hadoop 10中,只有一个NameNode来管理所有Namespace,但在Hadoop 20中,多个NameNode用于多个Namespace。

Hadoop 3x - Hadoop 3x还有多个名称空间用于多个名称空间。

218可扩展性

Hadoop 2x - 我们可以扩展到每个群集10,000个节点。

Hadoop 3x - 更好的可扩展性。 我们可以为每个群集扩展超过10,000个节点。

219更快地访问数据

Hadoop 2x - 由于数据节点缓存,我们可以快速访问数据。

Hadoop 3x - 这里也通过Datanode缓存我们可以快速访问数据。

220HDFS快照

Hadoop 2x - Hadoop 2增加了对快照的支持。 它为用户错误提供灾难恢复和保护。

Hadoop 3x - Hadoop 2也支持快照功能。

221平台

Hadoop 2x - 可以作为各种数据分析的平台,可以运行事件处理,流媒体和实时 *** 作。

Hadoop 3x - 这里也可以在YARN的顶部运行事件处理,流媒体和实时 *** 作。

222群集资源管理

Hadoop 2x - 对于群集资源管理,它使用YARN。 它提高了可扩展性,高可用性,多租户。

Hadoop 3x - 对于集群,资源管理使用具有所有功能的YARN。

3结论

正如我们已经讨论了Hadoop 2x与Hadoop 3x之间的22个重要差异,现在我们可以看到Hadoop 2和Hadoop 3哪个更好。

说明:在安装好Centos系统后,用root创建一般用户hadoop,在hadoop用户下搭建Hadoop集群,故很多文件的路径均为/home/hadoop…下面介绍一般步骤:

1创建一批普通用户,如test01、test02…并为其设置密码,命令如下:

useradd test01 创建用户

passwd test01 为test01设置密码

1

2

1

2

2把该批普通用户加入hadoop用户组

gpasswd -a test01 hadoop 把用户test01加入hadoop用户组

1

1

注:在文件/etc/passwd中记录着系统所有的用户;在文件/etc/shadow中记录着所有用户的密码,并一一对应;在文件/etc/group中记录着所有的用户组。

3由于在/home/hadoop/bashrc中配置了相关的环境变量,在启动spark-shell、hive、hbase时不需要加入相关路径,为了便于普通用户test01等的 *** 作,在test01等用户的bashrc文件中配置相关环境变量,并用source ~/bashrc使其生效。

4按照上述步骤设置后,可以正常启动spark-shell与hbase shell,但启动hive时出现报错:

Permission denied:user=test01,access=EXECUTE,inode="/tmp/hive":hadoop:supergroup:drwxrwx---

1

1

出现这个问题的原因是在hdfs上目录/tmp/hive的所有者为hadoop,所属用户组为supergroup,而相对于该目录用户test01属于其他用户,不具有任何权限,这里报错是不具有EXECUTE权限,要想解决这个问题,需要修改/tmp/hive的权限,命令如下:

hdfs dfs -chmod 777 /tmp 修改/tmp的权限

1

1

再次启动hive便不会再报该错误。

5在hadoop用户上可以正常运行如下程序,但是在test01用户登录运行时抛出异常

hadoop jar hadoop jar /home/hadoop/hadoop271/share/hadoop/mapreduce/hadoop-mapreduce-examples-271jar wordcount /test/input /test/output

1

1

注:这里运行的是wordcount示例,/test/input为数据所在路径;/test/output为输出结果目录,运行时自动创建。

在test01用户上执行该程序时抛出如下异常:

这里写描述

出现这个异常的原因是:

原来mapreducejobhistoryaddress 和mapreducejobhistorywebappaddres 这两个address的地址使用的是CDH默认的配置值,这里需要改成hostname,这样可能就是原来的位置不对造成的。

这里参考了(>

以上就是关于hadoop2 VS hadoop3 功能对比全部的内容,包括:hadoop2 VS hadoop3 功能对比、创建hadoop用户创错地方了、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9875741.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存