关于hadoop3.4.0预编译版本与hive预编译版本记录 最后更新时间:2025年09月10日 ### 结论 hadoop3.4.0的预编译版本需要配合hive4.0.1的预编译版本 ### 前言 配置hadoop3.4.0的过程中需要部署一套hive。参考网络上的资料,使用了hive3.1.3和hive4.1.0的版本,但是却出现了奇怪的现象。 ### 事件记录 第一个现象是,hadoop3.4.0需要用java11才能够正常启动并运行集群。不管是jdk8还是jdk11都会导致namenode和datanode之间产生通信问题。(该现象可参考官网中的记录,记录如下) > In HADOOP-18197, we upgraded the Protobuf in hadoop-thirdparty to version 3.21.12. This version may have compatibility issues with certain versions of JDK8, and you may encounter some errors (please refer to the discussion in HADOOP-18197 for specific details). > To address this issue, we recommend upgrading the JDK version in your production environment to a higher version (> JDK8). We will resolve this issue by upgrading hadoop-thirdparty’s Protobuf to a higher version in a future release of 3.4.x. Please note that we will discontinue support for JDK8 in future releases of 3.4.x. 而问题就在于此,hive3.1.3版本和hive4.1.0版本分别要使用jdk8和jdk17.导致无法正常启动hive 第二个现象是,通过调整环境变量的方法启动了hive后,却在运行阶段产生了各类问题。 如hive3.1.3在插入和计算数据的阶段,提交的mr任务会找不到mr包的主类。 hive4.1.0则是会继续产生jdk的version错误。
Comments | NOTHING