我正在尝试使用Hadoop 3.2客户端构建Java程序。它将能够与Hadoop 2.x集群一起使用吗?还是不支持?感谢您分享经验。
答案 0 :(得分:2)
对于Hadoop和大多数Apache许可的项目,只能保证次要版本号之间的兼容性。因此,您不应期望3.2客户端可以与2.x Hadoop集群一起使用。
Suma Shivaprasad撰写的Cloudera博客Upgrading your clusters and workloads from Apache Hadoop 2 to Apache Hadoop 3也提到以下内容:
与Hadoop 2的兼容性
电线兼容性
- Hadoop 3保持与Hadoop 2客户端的有线兼容性
- Distcp / WebHDFS兼容性得到保留
API兼容性
由于以下更改,Hadoop 3无法保留完整的API级别兼容性
- Classpath –依赖版本会像番石榴般发生碰撞
- 删除不赞成使用的API和工具
- Shell脚本重写
- 不兼容的错误修复
但也指出:
迁移工作量
MapReduce应用程序
MapReduce是完全二进制兼容的,工作负载应按原样运行,而无需进行任何更改。