2015-09-24 23 views
7

Tôi đang chạy truy vấn hive throwh oozie bằng cách sử dụng màu ..
Tôi đang tạo bảng thông qua luồng công việc hue-oozie ...
Công việc của tôi không thành công nhưng khi tôi đăng ký, bảng sẽ được tạo.
Log hiển thị dưới đây lỗi:Lỗi nội bộ 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) 

Không thể xác định được vấn đề này ....
Tôi usig HDP 2.3.1

Trả lời

7

Về cơ bản, lỗi này là do thiếu tập bản đồ trong lib chia sẻ oozie. Trong HDP jar Atlas có sẵn trong /usr/hdp/2.3.0.0-2557/atlas/ Đặt tất cả các lọ liên quan đến atlas trong lib phần hadoop ..

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

Thêm 'export HIVE_AUX_JARS_PATH=<atlas package>/hook/hive' trong hive-env.sh.
Sao chép <atlas package>/conf/application.properties để ẩn thư mục conf.

Khởi động lại dịch vụ oozie. Điều này sẽ giải quyết vấn đề này. Nếu có ai gặp vấn đề, hãy bình luận ở đây để tôi có thể giúp.

[Nhận xét của Immo Huneke: khi sử dụng máy ảo sandbox Hortonworks, tôi thấy rằng việc đặt các tệp jar trong thư mục chia sẻ/lib trong HDFS là đủ để giải quyết vấn đề. Tôi không phải cập nhật hive-env.sh hoặc sao chép tệp application.properties. Nhưng hãy kiểm tra đường dẫn chính xác của thư mục chia sẻ/lib của bạn bằng cách thực hiện lệnh hdfs dfs -ls /user/oozie/share/lib trước khi sao chép.]

1

có vẻ như bạn CLASS không tìm thấy ngoại lệ.

Bạn đã cài đặt Oozie Sharedlib, nếu Có, vui lòng cập nhật tất cả các Jar phụ thuộc tổ ong trong sharedLib Vị trí, và kiểm tra xem tình trạng

Ngoài ra kiểm tra nếu Hive Khách hàng có sẵn trong tất cả các nút dưới cụm và cùng nên chạy

+0

Yes.I đã cập nhật tất cả các lọ không có ..still có cùng một vấn đề – Aman

2

hive> thêm jar /usr/hdp//atlas/hook/hive/hive-bridge-${VERSION}.jar

nó sẽ ổn.

hy vọng trợ giúp cho bạn.

+0

Cảm ơn .. Tôi đã làm điều tương tự..và làm việc cho tôi .. hãy tìm câu trả lời dưới đây .. – Aman

1

Tôi đã thử mọi giải pháp có thể được đề cập trong diễn đàn này và trong ngăn xếp chồng, nhưng nó không giải quyết được vấn đề của tôi. Cuối cùng, tôi đã giải quyết nó bằng cách sao chép tất cả các lọ trong/hook/hive sang lib (tạo thư mục lib mới ở cấp job.properties) thư mục của luồng công việc oozie của tôi

Các vấn đề liên quan