Apache Hadoop 使用“ <主版本号> <次版本号> <维护版本号>”的版本格式,例如:Hadoop 3.2.1、Hadoop 2.10.0 版本。其中每个版本组件都是一个数值,版本也可以具有其他后缀,例如“ -alpha2”或“ -beta1”,又例如Hadoop Ozone 0.4.1-alpha 版本等。这些数值表示API 兼容性保证和发行版的质量。
Hadoop 发布主要版本的原因是其引入了可能不兼容的或有实质性的模块。例如:在Hadoop 2 中用YARN 和MapReduce v2 版本替换原来Hadoop 1 中的MapReduce v1 版本,以及在Hadoop 3 中从JDK7 到JDK8 所需的Java 运行时版本。Hadoop 的次要版本用于在主要发行版本中引入新的兼容功能。其维护版本包括错误修复或低风险可支持性更改。
目前,Hadoop 的版本已经趋近于稳定,2019 年10 月Apache Hadoop 2.10 系列的第一个稳定版本发布,Apache Hadoop 3.1.3 系列的第三个稳定版本发布,这些稳定版本的升级主要是用来进行错误的修复、改进和增强。Hadoop 的版本发展情况如图1.2 所示。
(www.xing528.com)
图1.2 Hadoop 版本发展历史
Hadoop 1.0 版本的HDFS 最初存在两个问题,分别是:NameNode 单点故障,难以应用于在线场景;NameNode 压力过大,且内存受限影响系统扩展性。除此之外,其MapReduce 存在Job-Tracker 访问压力过大,影响系统扩展性;不支持除MapReduce 之外的计算框架等问题。Hadoop 2.0 系列的推出解决了之前版本的单点故障和内存受限问题,并且囊括了资源管理系统YARN,而且依旧兼容之前版本的命令行与API 调用方法。
Hadoop 3.0 系列将原有的Java 7 版本提升到了Java 8,因此,使用该系列的用户需要将Java 版本进行提升,同时Hadoop 3.0 系列还整合许多重要的增强功能,该版本对Hadoop 内核进行了多项重大改进,主要包括:精简Hadoop 内核、增加YARN 时间线服务v2 版本、重写Shell脚本、覆盖客户端的JAR、MapReduce 任务级本地优化、重写多重服务的默认端口等。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。