2015-09-24 3 views
7

Я запускаю запрос куста throwh oozie с помощью hue ..
Я создаю таблицу через поток работы hue-oozie ...
Моя работа не работает, но когда я проверяю улей, таблица создается.
Log показывает ниже ошибки:Hive Внутренняя ошибка: 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

В основном эта ошибка возникает из-за отсутствия атласа jar в oozie share 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 

Добавить 'export HIVE_AUX_JARS_PATH=<atlas package>/hook/hive' в hive-env.sh.
Скопировать <atlas package>/conf/application.properties в каталог hive conf.

Перезапустите услуги oozie. Это решит эту проблему. Если кто-нибудь столкнется с проблемой, прокомментируйте здесь, чтобы я мог помочь.

[Комментарий от Immo Huneke: при использовании виниловой панели Hortonworks VM я обнаружил, что просто положить файлы jar в папку share/lib под HDFS было достаточно, чтобы решить проблему. Мне не нужно было обновлять hive-env.sh или копировать файл application.properties. Но проверьте точный путь к папке share/lib, выполнив команду hdfs dfs -ls /user/oozie/share/lib перед копированием.]

1

Вы, кажется, класс не найден исключение.

Вы установили Oozie SharedLib, если да, пожалуйста, обновите всю улью зависимой Jar в SharedLib Места и проверьте статус

Также проверьте, если клиент Hive доступен во всех узлах в рамках кластера и тот же должен быть запущен

+0

Да. Я обновил все банки, которых там нет .. оставаясь такой же проблемой – Aman

2

hive> добавить jar /usr/hdp//atlas/hook/hive/hive-bridge-${VERSION}.jar

все будет в порядке.

надежная помощь для u.

+0

Спасибо .. Я уже сделал то же самое ... и отработал для меня ... не нахожу ниже ответ .. – Aman

1

Я пробовал все возможные решения, упомянутые в этом форуме, и в stackoverflow, но это не решило мою проблему. Наконец, я разрешил его, скопировав все банки в/hook/hive в lib (создайте новую папку lib на уровне job.properties) в моем рабочем процессе oozie

Смежные вопросы