2014-11-24 17 views
14

Ich bin neu in HIVE. Ich habe bereits hadoop eingerichtet und es funktioniert gut, und ich möchte Hive einrichten. Wenn ich hive starten, zeigt es ein Fehler alsjava.net.URISyntaxException beim Starten von HIVE

Caused by: java.net.URISyntaxException: Relative path in absolute URI: ${system:java.io.tmpdir%7D/$%7Bsystem:user.name%7D 

Gibt es Lösungen?

+0

können Sie Ihre hbase-site.xml und Kern-site.xml –

Antwort

-1

hinzufügen Immobilien in hive-site.xml

<configuration> 
<property> 
    <name>hive.metastore.schema.verification</name> 
    <value>false</value> 
    <description>Will remove your error occurring because of metastore_db in shark</description> 
</property> 
</configuration> 

hinzufügen java und hadoop Pfad in hive-env.sh nach Ihrem System.

# Set HADOOP_HOME to point to a specific hadoop install directory 
export HADOOP_HOME=/home/user17/BigData/hadoop 

#hive 
export HIVE_HOME=/home/user17/BigData/hive 

# Hive Configuration Directory can be controlled by: 
export HIVE_CONF_DIR=$HIVE_HOME/conf 

und auch Bienenstock und hadoop Weg in Bashrc

export JAVA_HOME=/home/user17/jdk 
export PATH=$PATH:$JAVA_HOME/bin 

export HADOOP_INSTALL=/home/user17/BigData/hadoop 
export PATH=$PATH:$HADOOP_INSTALL/bin 
export HADOOP_MAPRED_HOME=$HADOOP_INSTALL 
export HADOOP_COMMON_HOME=$HADOOP_INSTALL 
export HADOOP_HDFS_HOME=$HADOOP_INSTALL 
export YARN_HOME=$HADOOP_INSTALL 

export HIVE_INSTALL=/home/user17/BigData/hive 
export PATH=$PATH:$HIVE_INSTALL/bin 

HINWEIS-- diesen alle Dateien Pfad gesetzt sind nach meinem System eingestellt hat, soll man auf dem Weg nach Ihrem System geben. lassen Sie mich wissen, wenn nicht arbeiten

12

Veränderung der HFS-site.xml diese Eigenschaften

<name>hive.exec.scratchdir</name> 
<value>/tmp/hive-${user.name}</value> 

<name>hive.exec.local.scratchdir</name> 
<value>/tmp/${user.name}</value> 

<name>hive.downloaded.resources.dir</name> 
<value>/tmp/${user.name}_resources</value> 

<name>hive.scratch.dir.permission</name> 
    <value>733</value> 

Neustart hive Metastore und hiveserver2

+0

$ {} user.name Paste auch auf jeden Fall die beste richtige Antwort ist. Wundert sich, warum die Hive-Entwickler die Syntax von $ {system: user.name} gebrochen haben. – Chris

+0

Ich habe die obigen Änderungen in hive-site.xml (auf Mac) durchgeführt. Danke :) – gnsb

+0

das ist korrekt –

0

ich auch den gleichen Fehler aufgetreten sind, während HMaster für Hbase starten. Dies wurde korrigiert, indem der Pfad zum Verzeichnis auf hdfs angegeben wurde, wo hbase-Daten in der hbase.rootdir-Eigenschaft von hbase-site.xml gespeichert werden sollen. Früher verwendete ich nur den relativen Pfad.

Pfad verursacht Ausnahme: hdfs: // localhost: 8020

richtigen Pfad: hdfs: // localhost: 8020/hbase

30

gebe folgende zu Beginn des Bienenstock-site.xml

<property> 
    <name>system:java.io.tmpdir</name> 
    <value>/tmp/hive/java</value> 
    </property> 
    <property> 
    <name>system:user.name</name> 
    <value>${user.name}</value> 
    </property> 

Siehe question

+0

kurz und präzise. –

+4

DIESE SOLLTE ALS ANTWORT ANGEZEIGT WERDEN. – orim

+0

Das ist die richtige Antwort, vielen Dank! –