2015-09-24 343 views
7

我throwh Oozie的使用色相運行蜂巢查詢..
我創建通過色相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) 

無法識別問題....
我USIG HDP 2.3.1

回答

7

基本上這錯誤是由於在Oozie的份額LIB失蹤圖譜罐子。 在HDP阿特拉斯罐子是/usr/hdp/2.3.0.0-2557/atlas/ 把所有涉及到Hadoop中的份額LIB圖譜的罐子可利用的。

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赫尼克:使用沙箱Hortonworks虛擬機時,我發現,只是把jar文件在HDFS下共享/ lib文件夾就足以解決問題。我不必更新hive-env.sh或複製application.properties文件。但在複製之前通過執行命令hdfs dfs -ls /user/oozie/share/lib來檢查share/lib文件夾的確切路徑。]

1

看來你的類是未發現異常。

您是否安裝了Oozie Sharedlib,如果是,請更新在sharedLib位置的所有蜂巢依賴JAR,並檢查狀態

同時檢查蜂房客戶在所有集羣和同下的可用節點應該運行

+0

是的。我更新了所有不在那裏的jar ..still有相同的問題 – Aman

2

配置單元>添加jar /usr/hdp//atlas/hook/hive/hive-bridge-${VERSION}.jar

它會好的。

希望對你有所幫助。

+0

謝謝..我已經做了同樣的事情......併爲我工作。請找到下面的答案.. – Aman

1

我想每一個在這個論壇和計算器提到的每一個可能的解決方案,但它並沒有解決我的問題。 最後,我通過將/ hook/hive中的所有jar複製到我的oozie工作流程的lib文件夾(在job.properties級創建一個新的lib文件夾)來解決它。