2015-09-24 20 views
7

色相を使用してハイブクエリを実行しています。
色相 - oozieワークフローでテーブルを作成しています...
私の仕事は失敗していますが、ハイブをチェックインするとテーブルが作成されます。
ログは、エラーの下に示していますハイブ内部エラー:java.lang.ClassNotFoundException(org.apache.atlas.hive.hook.HiveHook)

16157 [main] INFO org.apache.hadoop.hive.ql.hooks.ATSHook - Created ATS Hook 
2015-09-24 11:05:35,801 INFO [main] hooks.ATSHook (ATSHook.java:<init>(84)) - Created ATS Hook 
16159 [main] ERROR org.apache.hadoop.hive.ql.Driver - hive.exec.post.hooks Class not found:org.apache.atlas.hive.hook.HiveHook 
2015-09-24 11:05:35,803 ERROR [main] ql.Driver (SessionState.java:printError(960)) - hive.exec.post.hooks Class not found:org.apache.atlas.hive.hook.HiveHook 
16159 [main] ERROR org.apache.hadoop.hive.ql.Driver - FAILED: Hive Internal Error: java.lang.ClassNotFoundException(org.apache.atlas.hive.hook.HiveHook) 
java.lang.ClassNotFoundException: org.apache.atlas.hive.hook.HiveHook 
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) 
問題を識別する

ことができない....
私はあなたのクラスが例外を発見していないようだHDP 2.3.1

答えて

7

基本的に、このエラーはoozie share libのatlas jarがないためです。 HDPではアトラスジャーは、Hadoopの共有libにアトラスに関連するすべてのjarファイルを入れ/usr/hdp/2.3.0.0-2557/atlas/ で提供されています ...

hadoop fs -put /usr/hdp/2.3.0.0-2557/atlas/hook/hive/* /user/oozie/share/lib/lib200344/hive 

hive-env.shで'export HIVE_AUX_JARS_PATH=<atlas package>/hook/hive'を追加します。
<atlas package>/conf/application.propertiesをハイブconfディレクトリにコピーします。

oozieサービスを再起動します。これはこの問題を解決します。もし誰かが問題に直面したら、私が助けることができるようにここにコメントしてください。

[Immo Hunekeのコメント:HortonworksサンドボックスVMを使用している場合、HDFSのshare/libフォルダにjarファイルを置くだけで問題を解決できました。私はhive-env.shを更新したり、application.propertiesファイルをコピーする必要はありませんでした。しかし、コピーする前にコマンドhdfs dfs -ls /user/oozie/share/libを実行してshare/libフォルダの正確なパスを確認してください。]

1

usigています。

はいた場合、ステータス

はまたハイブクライアントがクラスタの下にあるすべてのノードで利用できるかどうかをチェックし、同じならば、sharedLib場所にあるすべてのハイブ依存Jarファイルを更新し、確認してください、あなたはOozie Sharedlibをインストール持っています

+0

はい。そこにないすべてのjarを更新しました。 ..同じ問題を抱えている。 – Aman

2

ハイブ> add jar /usr/hdp//atlas/hook/hive/hive-bridge-${VERSION}.jar

大丈夫です。

希望のヘルプ

+0

ありがとう..私はすでに同じことをしていて、私のために働いた。 – Aman

1

私はこのフォーラムおよびstackoverflowで言及されたすべての可能な解決策を試しましたが、問題は解決しませんでした。 最後に、私はoozieワークフローの/hook/hiveのすべてのjarファイルをlibにコピー(job.propertiesレベルで新しいlibフォルダを作成)して解決しました。