What are the frequently asked questions about Hive
This article mainly introduces what Hive common questions are, which can be used for reference by interested friends. I hope you can learn a lot after reading this article. Let's take a look at it.
1. HIVE startup error report
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/mapred/MRVersion
At org.apache.hadoop.hive.shims.Hadoop23Shims.isMR2 (Hadoop23Shims.java:852)
At org.apache.hadoop.hive.shims.Hadoop23Shims.getHadoopConfNames (Hadoop23Shims.java:923)
At org.apache.hadoop.hive.conf.HiveConf$ConfVars. (HiveConf.java:358)
At org.apache.hadoop.hive.conf.HiveConf. (HiveConf.java:105)
At org.apache.hadoop.hive.metastore.HiveMetaStore.main (HiveMetaStore.java:6000)
At sun.reflect.NativeMethodAccessorImpl.invoke0 (NativeMethod)
At sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:57)
At sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
At java.lang.reflect.Method.invoke (Method.java:606)
At org.apache.hadoop.util.RunJar.run (RunJar.java:221)
At org.apache.hadoop.util.RunJar.main (RunJar.java:136)
Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.mapred.MRVersion
At java.net.URLClassLoader$1.run (URLClassLoader.java:366)
At java.net.URLClassLoader$1.run (URLClassLoader.java:355)
At java.security.AccessController.doPrivileged (Native Method)
At java.net.URLClassLoader.findClass (URLClassLoader.java:354)
At java.lang.ClassLoader.loadClass (ClassLoader.java:425)
At sun.misc.Launcher$AppClassLoader.loadClass (Launcher.java:308)
At java.lang.ClassLoader.loadClass (ClassLoader.java:358)
... 11 more
Solution: download hadoop-mapreduce-client-common-2.6.0-cdh6.4.4.jar to replace the package in hadoop-mapreduce
two。 Error
[ERROR] Terminal initialization failed; falling back to unsupported
Java.lang.IncompatibleClassChangeError: Found class jline.Terminal, but interface was expected
At jline.TerminalFactory.create (TerminalFactory.java:101)
At jline.TerminalFactory.get (TerminalFactory.java:158)
At jline.console.ConsoleReader. (ConsoleReader.java:229)
At jline.console.ConsoleReader. (ConsoleReader.java:221)
At jline.console.ConsoleReader. (ConsoleReader.java:209)
At org.apache.hadoop.hive.cli.CliDriver.getConsoleReader (CliDriver.java:794)
At org.apache.hadoop.hive.cli.CliDriver.executeDriver (CliDriver.java:733)
At org.apache.hadoop.hive.cli.CliDriver.run (CliDriver.java:693)
At org.apache.hadoop.hive.cli.CliDriver.main (CliDriver.java:628)
At sun.reflect.NativeMethodAccessorImpl.invoke0 (NativeMethod)
At sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:57)
At sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
At java.lang.reflect.Method.invoke (Method.java:606)
At org.apache.hadoop.util.RunJar.run (RunJar.java:221)
At org.apache.hadoop.util.RunJar.main (RunJar.java:136)
Exception in thread "main" java.lang.IncompatibleClassChangeError: Found class jline.Terminal, but interface was expected
At jline.console.ConsoleReader. (ConsoleReader.java:230)
At jline.console.ConsoleReader. (ConsoleReader.java:221)
At jline.console.ConsoleReader. (ConsoleReader.java:209)
At org.apache.hadoop.hive.cli.CliDriver.getConsoleReader (CliDriver.java:794)
At org.apache.hadoop.hive.cli.CliDriver.executeDriver (CliDriver.java:733)
At org.apache.hadoop.hive.cli.CliDriver.run (CliDriver.java:693)
At org.apache.hadoop.hive.cli.CliDriver.main (CliDriver.java:628)
At sun.reflect.NativeMethodAccessorImpl.invoke0 (NativeMethod)
At sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:57)
At sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
At java.lang.reflect.Method.invoke (Method.java:606)
At org.apache.hadoop.util.RunJar.run (RunJar.java:221)
At org.apache.hadoop.util.RunJar.main (RunJar.java:136)
Solution: delete the jline.jar under the yarn directory
Rm-rf / usr/hdp/2.2.8.0-3150/hadoop-yarn/lib/jline-0.9.94.jar
3. problem
Caused by: org.datanucleus.store.rdbms.datasource.DatastoreDriverNotFoundException: The specified datastore driver ("com.mysql.jdbc.Driver") was not found in the CLASSPATH. Please check your CLASSPATH specification, and the name of the driver.
Solution:
Copy the mysql-connector-java-commercial-5.0.3-bin.jar file to the / usr/lib/hive/lib directory
4. problem
Error executing insert statement
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/mapred/MRVersion
At org.apache.hadoop.hive.shims.Hadoop23Shims.isMR2 (Hadoop23Shims.java:852)
At org.apache.hadoop.hive.shims.Hadoop23Shims.getHadoopConfNames (Hadoop23Shims.java:923)
At org.apache.hadoop.hive.conf.HiveConf$ConfVars. (HiveConf.java:358)
At org.apache.hadoop.hive.conf.HiveConf. (HiveConf.java:105)
At org.apache.hadoop.hive.metastore.HiveMetaStore.main (HiveMetaStore.java:6000)
At sun.reflect.NativeMethodAccessorImpl.invoke0 (NativeMethod)
At sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:57)
At sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
At java.lang.reflect.Method.invoke (Method.java:606)
At org.apache.hadoop.util.RunJar.run (RunJar.java:221)
At org.apache.hadoop.util.RunJar.main (RunJar.java:136)
Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.mapred.MRVersion
At java.net.URLClassLoader$1.run (URLClassLoader.java:366)
At java.net.URLClassLoader$1.run (URLClassLoader.java:355)
At java.security.AccessController.doPrivileged (Native Method)
At java.net.URLClassLoader.findClass (URLClassLoader.java:354)
At java.lang.ClassLoader.loadClass (ClassLoader.java:425)
At sun.misc.Launcher$AppClassLoader.loadClass (Launcher.java:308)
At java.lang.ClassLoader.loadClass (ClassLoader.java:358)
... 11 more
X=vertex_1468482423723_0008_2_00 [Map 1], java.lang.NoClassDefFoundError: Could not initialize class org.apache.hadoop.hive.conf.HiveConf$ConfVars
At org.apache.hadoop.hive.ql.exec.Utilities.getBaseWork (Utilities.java:371)
At org.apache.hadoop.hive.ql.exec.Utilities.getMapWork (Utilities.java:296)
At org.apache.hadoop.hive.ql.exec.tez.HiveSplitGenerator.initialize (HiveSplitGenerator.java:106)
At org.apache.tez.dag.app.dag.RootInputInitializerManager$InputInitializerCallable$1.run (RootInputInitializerManager.java:245)
At org.apache.tez.dag.app.dag.RootInputInitializerManager$InputInitializerCallable$1.run (RootInputInitializerManager.java:239)
At java.security.AccessController.doPrivileged (Native Method)
At javax.security.auth.Subject.doAs (Subject.java:415)
At org.apache.hadoop.security.UserGroupInformation.doAs (UserGroupInformation.java:1671)
At org.apache.tez.dag.app.dag.RootInputInitializerManager$InputInitializerCallable.call (RootInputInitializerManager.java:239)
At org.apache.tez.dag.app.dag.RootInputInitializerManager$InputInitializerCallable.call (RootInputInitializerManager.java:226)
At java.util.concurrent.FutureTask.run (FutureTask.java:262)
At java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1145)
At java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:615)
At java.lang.Thread.run (Thread.java:745)
Solution:
Temporarily change the method
Hive > add jar / usr/hdp/2.2.8.0-3150/hadoop-mapreduce/hadoop-mapreduce-client-common.jar
Hive > add jar / usr/lib/hive/lib/hive-common.jar
Permanently change the method
Mkdir-p / usr/hdp/2.2.8.0-3150/hive/auxlib
Ln-sf / usr/hdp/current/hadoop-mapreduce-client/hadoop-mapreduce-client-common.jar hadoop-mapreduce-client-common.jar
Ln-sf / usr/lib/hive/lib/hive-common.jar hive-common.jar
Thank you for reading this article carefully. I hope the article "what are the Hive FAQs" shared by the editor will be helpful to you. At the same time, I also hope you will support us and pay attention to the industry information channel. More related knowledge is waiting for you to learn!