我在Windows 10环境中安装了hadoop 3.0 beta1的Windows本机库。 HDFS和Yarn启动成功。安装了Hive 2.2,安装了derby db的同一个Windows本机库。但是在运行配置单元服务器时失败了。
以下是运行Hive时收到的错误。 Hive与hadoop 3.0 beta 1是否有任何版本兼容性,这将解决以下错误。
2017-10-22 12:25:53,002 ERROR shims.ShimLoader: Error loading shims
java.lang.IllegalArgumentException: Unrecognized Hadoop major version number: 3.0.0-beta1
at org.apache.hadoop.hive.shims.ShimLoader.getMajorVersion(ShimLoader.java:177)
at org.apache.hadoop.hive.shims.ShimLoader.loadShims(ShimLoader.java:144)
at org.apache.hadoop.hive.shims.ShimLoader.getHadoopShims(ShimLoader.java:99)
at org.apache.hadoop.hive.ql.udf.UDAFPercentile.<clinit>(UDAFPercentile.java:51)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at org.apache.hive.common.util.ReflectionUtil.newInstance(ReflectionUtil.java:83)
at org.apache.hadoop.hive.ql.exec.Registry.registerUDAF(Registry.java:238)
at org.apache.hadoop.hive.ql.exec.Registry.registerUDAF(Registry.java:231)
at org.apache.hadoop.hive.ql.exec.FunctionRegistry.<clinit>(FunctionRegistry.java:430)
at org.apache.hadoop.hive.ql.metadata.Hive.reloadFunctions(Hive.java:243)
at org.apache.hadoop.hive.ql.metadata.Hive.registerAllFunctionsOnce(Hive.java:227)
at org.apache.hadoop.hive.ql.metadata.Hive.<init>(Hive.java:384)
at org.apache.hadoop.hive.ql.metadata.Hive.create(Hive.java:328)
at org.apache.hadoop.hive.ql.metadata.Hive.getInternal(Hive.java:308)
at org.apache.hadoop.hive.ql.metadata.Hive.get(Hive.java:284)
at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:581)
at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:544)
at org.apache.hive.service.cli.CLIService.applyAuthorizationConfigPolicy(CLIService.java:127)
at org.apache.hive.service.cli.CLIService.init(CLIService.java:112)
at org.apache.hive.service.cli.thrift.EmbeddedThriftBinaryCLIService.init(EmbeddedThriftBinaryCLIService.java:45)
at org.apache.hive.jdbc.HiveConnection.<init>(HiveConnection.java:165)
at org.apache.hive.jdbc.HiveDriver.connect(HiveDriver.java:107)
at java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:208)
at org.apache.hive.beeline.DatabaseConnection.connect(DatabaseConnection.java:145)
at org.apache.hive.beeline.DatabaseConnection.getConnection(DatabaseConnection.java:209)
at org.apache.hive.beeline.Commands.connect(Commands.java:1497)
at org.apache.hive.beeline.Commands.connect(Commands.java:1392)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.hive.beeline.ReflectiveCommandHandler.execute(ReflectiveCommandHandler.java:54)
at org.apache.hive.beeline.BeeLine.execCommandWithPrefix(BeeLine.java:1105)
at org.apache.hive.beeline.BeeLine.embeddedConnect(BeeLine.java:909)
at org.apache.hive.beeline.BeeLine.defaultConnect(BeeLine.java:926)
at org.apache.hive.beeline.BeeLine.begin(BeeLine.java:872)
at org.apache.hive.beeline.cli.HiveCli.runWithArgs(HiveCli.java:35)
at org.apache.hive.beeline.cli.HiveCli.main(HiveCli.java:29)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.hadoop.util.RunJar.run(RunJar.java:239)
at org.apache.hadoop.util.RunJar.main(RunJar.java:153)
java.lang.ExceptionInInitializerError
Beeline version 2.2.0 by Apache Hive
2017-10-22 12:25:53,072 WARN conf.HiveConf: HiveConf of name hive.server2.enable.impersonation does not exist
2017-10-22 12:25:53,121 WARN conf.HiveConf: HiveConf of name hive.server2.enable.impersonation does not exist
答案 0 :(得分:3)
编辑:截至2018年5月21日,Hive 3.0.0已发布并支持Hadoop 3.有关更多详细信息,请参阅JIRA Changelog。
在提出这个问题时,Hive尚未与Hadoop 3集成。这些是与您的问题相关的错误。
https://issues.apache.org/jira/browse/HIVE-15016 - 使用Hadoop 3.0.0-beta1运行测试 https://issues.apache.org/jira/browse/HIVE-15326 - Hive垫片报告无法识别的Hadoop主要版本号:3.0.0-alpha2-SNAPSHOT
而downloads page显示:
这意味着仍然不支持与Hadoop 3的集成。