我遇到了一個豬腳本的問題,我嘗試了很多不同的方法。任何人都可以指出我究竟做錯了什麼?它應該是非常簡單的,我試圖在計算平均值後得到最大值。pigscript error not calculation max
a = LOAD 'default.books' using org.apache.hcatalog.pig.HCatLoader();
b = LOAD 'default.book_rating' using org.apache.hcatalog.pig.HCatLoader();
books_and_ratings = join a by isbn, b by isbn;
by_isbn = GROUP books_and_ratings BY (a::isbn);
DESCRIBE by_isbn;
average_book_rating = FOREACH by_isbn
GENERATE books_and_ratings.book_title, books_and_ratings.a::isbn as isbn1,
books_and_ratings.book_author, books_and_ratings.publisher,
AVG(books_and_ratings.book_rating) as AVG_RATING;
DESCRIBE average_book_rating;
group_avg = GROUP average_book_rating ALL;
DESCRIBE group_avg;
max_avg_rating = FOREACH group_avg
GENERATE FLATTEN average_book_rating.a::book_title, isbn1,
average_book_rating.a::book_author, average_book_rating.a::publisher, MAX(AVG_RATING);
dump max_avg_rating;
解析失敗:不匹配的輸入 'average_book_rating' 期待LEFT_PAREN
您是否收到錯誤,或者只是沒有正確計算最大值? – Eyal 2014-09-28 13:56:13
@eyal實際上得到一個錯誤.... – Hades 2014-09-28 20:24:43
計算max_avg_rating的最後一個stmt不正確。你能粘貼確切的錯誤嗎? – 2014-09-29 00:48:24