1.hadoop-3.0要求JDK版本不低于1.8,对之前的Java版本不再提供支持.
所有Hadoop JAR现在都是针对Java 8的运行时版本编译的。
2.部分服务默认端口修改,不再绑定到Linux临时端口(HDFS-9427,HADOOP-12811)
Namenode ports: 50470 --> 9871, 50070--> 9870, 8020 --> 9820
Secondary NN ports: 50091 --> 9869,50090 --> 9868
Datanode ports: 50020 --> 9867, 50010--> 9866, 50475 --> 9865, 50075 --> 9864
Kms server ports: 16000 --> 9600 (原先的16000与HMaster端口冲突)
3. 精简了内核,剔除了过期的API和实现,废弃hftp转由webhdfs替代
将默认组件实现替换成最高效的实现(比如将FileOutputCommitter缺省实现换为v2版本,废除hftp转由webhdfs替代,移除Hadoop子实现序列化库org.apache.hadoop.Records
4.重写client jars
2.x版本中的hadoop-client Maven工件将Hadoop的传递依赖关系拉到Hadoop应用程序的类路径上。如果这些传递性依赖的版本与应用程序使用的版本冲突,这可能会有问题。
添加了新的hadoop-client-api和hadoop-client-runtime构件,可以将Hadoop的依赖关系集中到一个jar中。这可以避免将Hadoop的依