org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient kann nicht instanziiert werden

Sheeraz Gul 20 Juni 2023
org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient kann nicht instanziiert werden

Dieses Tutorial zeigt, wie man java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient löst.

org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient kann nicht instanziiert werden in Java

Apache Hive ist eine Open-Source-Data-Warehouse-Software zum Lesen, Verwalten und Schreiben der großen Datensätze, die in Hadoop-Dateien gespeichert sind. Es funktioniert ähnlich wie SQL; Manchmal, wenn Hadoop und Hive nicht richtig konfiguriert sind, kann es den Fehler java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient auslösen.

Die Lösung für diesen Fehler beim Arbeiten auf der Ubuntu-Plattform finden Sie unten. Befolgen Sie die nachstehenden Methoden, um die Hive-Shell ordnungsgemäß und ohne Fehler auszuführen.

die ~/.bashrc-Datei

Öffnen Sie die Datei bashrc im Home-Verzeichnis und fügen Sie am Ende der Datei sudo gedit ~/.bashrc die folgenden Umgebungsvariablen hinzu.

# directory configuration for JAVA_HOME
export JAVA_HOME="/usr/lib/jvm/java-9-oracle"
export PATH="$PATH:$JAVA_HOME/bin"

# directory configuration for HADOOP_HOME
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin

export HIVE_HOME=/usr/lib/hive
export PATH=$PATH:$HIVE_HOME/bin

die .jar-Datei

Wir müssen auch die .jar-Datei MySQL-connector-java-5.1.28.jar oder eine aktuelle Version im lib-Verzeichnis von Hive home ablegen.

Erstellen Sie die Datei hive-site.xml

Wir müssen die Datei hive-site.xml erstellen, die im Verzeichnis conf von Hive abgelegt wird. Stellen Sie sicher, dass Sie den folgenden Code in die Datei einfügen.

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>

<property>
  <name>javax.jdo.option.ConnectionURL</name>
  <value>jdbc:mysql://localhost/metastore?createDatabaseIfNotExist=true</value>
</property>

<property>
  <name>javax.jdo.option.ConnectionDriverName</name>
  <value>com.mysql.jdbc.Driver</value>
</property>

<property>
  <name>javax.jdo.option.ConnectionUserName</name>
  <value>root</value>
</property>

<property>
  <name>javax.jdo.option.ConnectionPassword</name>
  <value>root</value>
</property>

<property>
  <name>datanucleus.autoCreateSchema</name>
  <value>true</value>
</property>

<property>
  <name>datanucleus.fixedDatastore</name>
  <value>true</value>
</property>

<property>
 <name>datanucleus.autoCreateTables</name>
 <value>True</value>
 </property>

</configuration>

Installieren Sie die erforderliche Software und Plug-ins

Um die Hive-Shell auf Ubuntu auszuführen, müssen wir zuerst ein paar Software installieren. Die Liste ist unten angegeben.

  1. MySQL
  2. Hadoop
  3. Bienenstock
  4. Java

Sobald diese Software und Plugins erfolgreich installiert sind, können wir die Hive-Shell ausführen.

Führen Sie Dienste aus und führen Sie die Hive-Shell aus

Die letzte Methode ist der Ausführungsteil, in dem wir alle Dienste ausführen und die Hive-Shell ausführen müssen. Folgen Sie den unteren Schritten.

  1. Starten Sie alle Dienste von Hadoop, indem Sie start-all.sh starten.
  2. Prüfen Sie nun, ob alle Dienste von Hadoop laufen. Verwenden Sie den Befehl jps, um dies zu überprüfen.
  3. Geben Sie abschließend den Hive-Befehl ein, um die Hive-Shell zu starten.
Sheeraz Gul avatar Sheeraz Gul avatar

Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.

LinkedIn Facebook

Verwandter Artikel - Java Error