hadoop3.0可用【 GA】版发布与alpha1版比较有哪些不同

本文涉及的产品
全球加速 GA,每月750个小时 15CU
简介: hadoop3.0可用【 GA】版发布与alpha1版比较有哪些不同

hadoop GA可用版发布,与alpha1增加了不少功能,这里摘出与alpha1功能上不同的地方。如下:



Shaded client jars



解决了依赖冲突问题

hadoop2.x中所有依赖都添加到应用程序环境变量,这样有可能造成应用程序依赖与hadoop依赖冲突。HADOOP-11804添加了新的 hadoop-client-api 和hadoop-client-runtime artifacts,这样避免了hadoop依赖到应用程序的classpath.这可能跟我们以前经常遇到的多个重复的包,有关系。


支持 Opportunistic 容器和分布式调度



引入了一个概念ExecutionType。应用程序需要Opportunistic类型的可执行的containers.这种类型的容器,可以在namenode上执行,甚至在调度没有资源的情况下。这种情况下,这些容器containers,将会在namenode排队,等待资源启动。Opportunistic 容器比默认的Guaranteed类型容器优先级低,因此如果需要可以抢占资源,为Guaranteed容器腾出空间。这将提高集群利用率。


S3Guard:为S3 客户端文件系统提供一致性和缓存Metadata


HADOOP-13345为亚马逊存储(Amazon S3 storage)S3A 客户端添加了一个可选的feature:有能力使用DynamoDB表作为一个快速的和一致的存储文件和目录元数据


HDFS基于路由器联盟(Router-Based Federation)


HDFS路由器联盟添加了RPC 路由层,提供多个HDFS命名空间namespaces的联合视图。这个与 ViewFs和 HDFS Federation类似。这里面mount table由服务端管理,而不是有客户端管理,这简化了HDFS 客户端对联盟集群的访问。



基于API配置Capacity 调度


OrgQueue扩展了capacity 调度,提供了可编程的方式来配置,可以调用 REST API 来修改队列配置。


YARN资源类型


YARN 的资源类型已经扩展到支持用户自定义类型,不止是 CPU 和内存。例如用户可以自定义的类型如GPUs,软件许可证书或则本地附加存储( locally-attached storage),Yarn的任务可以基于这些资源调度。



英文链接:http://hadoop.apache.org/docs/r3.0.0/

对于alpha1不了解的,可参考下面

#############################################

补充:


Apache Hadoop 3.0.0-alpha1版发布做了哪些改进



Apache Hadoop 3.0.0-alpha1包含很多重要的改进在hadoop2.x的基础上。

这个是一个alpha 版,通过开发者和使用者帮助测试和搜集反馈。API的稳定性和质量还不能保证。


概述


提倡阅读全部发布说明,这里对更改内容做一个概述。


1.Java最低版本要求从Java7更改为Java8

所有的Hadoop JARs针对运行时版本的Java 8被编译。仍在使用Java 7或更低版本的用户必须升级至Java 8。



2.支持hdfs erasure encoding

与副本相比纠删码是一种更节省空间的数据持久化存储方法。编码标准如Reed Solomon(10,4)有1.4倍的空间开销.与HDFS副本相比则是3倍空间开销。

因为纠删码主要的额外开销是在重建和执行远程读,它传统用于存储冷数据,即不经常访问的数据。当部署这个新特性时用户应该考虑纠删码的网络和CPU开销。

更多细节参考 HDFS Erasure Coding (http://hadoop.apache.org/docs/r3 ... SErasureCoding.html)文档.



3、YARN Timeline Service v.2

我们引入YARN 的alpha 1版,. YARN Timeline Service v.2 地址两大挑战:提高时间轴的可扩展性和可靠性,并通过引入流量和聚合增强可用性.

————————————————

YARN Timeline Service v.2 alpha 1让用户和开发者测试,反馈和建议为替换 Timeline Service v.1.x做准备。它应用于测试容量。最重要的是,没有启用安全性。不设置或则使用Timeline Service v.2 ,直到安全是有效的如果安全是一个关键的要求。

更多细节参考 YARN Timeline Service v.2 【http://hadoop.apache.org/docs/r3.0.0-alpha1/hadoop-yarn/hadoop-yarn-site/TimelineServiceV2.html】文档.


4、Shell 脚本重写

Hadoop的shell脚本已被重写,解决许多长期存在的漏洞,包括一些新的功能。尽管一些关键点保持兼容性,但是一些更改可能会破坏现有的安装。

不兼容的改变在发布说明中,相关的讨论在 HADOOP-9902(https://issues.apache.org/jira/browse/HADOOP-9902

更多内容在 Unix Shell Guide文档。也可看 Unix Shell API文档,它描述了许多新的功能,特别是与可扩展性有关的功能。




5、MR任务级本地优化

MR任务级本地优化。MapReduce添加了Map输出collector的本地实现。对于shuffle密集型作业,这将会有30%以上的性能提升。

更多细节: MAPREDUCE-2841(https://issues.apache.org/jira/browse/MAPREDUCE-2841


6、支持2个及以上 NameNodes.

允许用户运行多个Standby NN,更高的容错性。比如,通过配置3个NN和5个JournalNodes,集群能够容忍2个NN宕机而不是之前的一个。

刚开始HDFS NameNode高可用提供了一个namenode,和Standby namenode.通过规定的三个JournalNodes,复制edits 。这种架构能够容忍系统中的任何一个节点的失败。

然而,一些部署需要更高程度的容错性。这是通过这一新功能,它允许用户运行多个备用节点【Standby namenode】。例如,通过配置三个NameNodes和五个journalnodes,集群能够容忍两节点而不是一个失败。

高可用文档(http://hadoop.apache.org/docs/r3.0.0-alpha1/hadoop-project-dist/hadoop-hdfs/HDFSHighAvailabilityWithQJM.html)已经更新,说明如何配置多个namenode。




7、更改多个服务的默认端口。

此前,多个Hadoop服务的默认端口是在Linux的临时端口范围(32768-61000)。这意味着在启动时,服务有时会失败,绑定到端口,由于与另一个应用程序的冲突。

这个冲突的端口已经移出这个范围,影响 NameNode, Secondary NameNode, DataNode, 和KMS。文档已更新

发布说明地址https://issues.apache.org/jira/browse/HDFS-9427

更改端口列表地址https://issues.apache.org/jira/browse/HADOOP-12811


8.支持微软Azure 数据Lake 系统连接器

hadoop支持整合软Azure 数据Lake作为一种替代Hadoop兼容的文件系统。


9、Intra-datanode 平衡器

一个DataNode管理多个磁盘.


10.改编守护进程和任务堆管理

hadoop守护进程及MapReduce任务一系列的heap管理的改变。

HADOOP-10950(https://issues.apache.org/jira/browse/HADOOP-10950) 介绍了配置守护进程heap大小配置方法

值得注意的是基于主机内存调整成为可能,和 HADOOP_HEAPSIZE 值被弃用。更多细节查看发布说明 HADOOP-10950

MAPREDUCE-5785(https://issues.apache.org/jira/browse/MAPREDUCE-5785)简化了map和reduce任务的heap大小的配置,因此理想的heap的大小,不在需要任务的指定配置和作为Java选项。已有的配置不受影响。更多谢姐可查看MAPREDUCE


目录
相关文章
|
3月前
|
数据采集 机器学习/深度学习 数据格式
在使用 Core ML 时,有哪些注意事项?
在使用 Core ML 时,有哪些注意事项?
55 1
|
3月前
|
分布式计算 Hadoop 关系型数据库
Hadoop学习笔记(HDP)-Part.10 创建集群
01 关于HDP 02 核心组件原理 03 资源规划 04 基础环境配置 05 Yum源配置 06 安装OracleJDK 07 安装MySQL 08 部署Ambari集群 09 安装OpenLDAP 10 创建集群 11 安装Kerberos 12 安装HDFS 13 安装Ranger 14 安装YARN+MR 15 安装HIVE 16 安装HBase 17 安装Spark2 18 安装Flink 19 安装Kafka 20 安装Flume
103 1
Hadoop学习笔记(HDP)-Part.10 创建集群
|
3月前
|
消息中间件 关系型数据库 MySQL
Hadoop学习笔记(HDP)-Part.03 资源规划
01 关于HDP 02 核心组件原理 03 资源规划 04 基础环境配置 05 Yum源配置 06 安装OracleJDK 07 安装MySQL 08 部署Ambari集群 09 安装OpenLDAP 10 创建集群 11 安装Kerberos 12 安装HDFS 13 安装Ranger 14 安装YARN+MR 15 安装HIVE 16 安装HBase 17 安装Spark2 18 安装Flink 19 安装Kafka 20 安装Flume
111 0
|
9月前
|
Java 测试技术 Apache
软件版本GA,RC,alpha,beta,Build 含义
软件版本GA,RC,alpha,beta,Build 含义
78 0
|
10月前
|
Java 应用服务中间件 数据库连接
【软件版本】软件版本GA、RC、Beta、Alpha等的详细解释和含义
【软件版本】软件版本GA、RC、Beta、Alpha等的详细解释和含义
163 0
|
Java 应用服务中间件 数据库连接
软件版本的GA、RC的具体含义
软件版本的GA、RC的具体含义
218 0
软件版本的GA、RC的具体含义
|
安全 Linux 测试技术
alpha、beta、rc这些发布的版本各自含义
alpha、beta、rc这些发布的版本各自含义
283 0
alpha、beta、rc这些发布的版本各自含义
|
机器学习/深度学习 存储 分布式计算
Apache Hadoop 3.0.0-alpha1版发布做了哪些改进
Apache Hadoop 3.0.0-alpha1版发布做了哪些改进
152 0
|
存储 分布式计算 Hadoop
四十九、Hadoop HA部署(MINI版)(二)
四十九、Hadoop HA部署(MINI版)(二)
四十九、Hadoop HA部署(MINI版)(二)
|
分布式计算 运维 Hadoop
四十九、Hadoop HA部署(MINI版)(一)
四十九、Hadoop HA部署(MINI版)(一)
四十九、Hadoop HA部署(MINI版)(一)

相关实验场景

更多