我想在兩個文件加入後過濾記錄。使用PIG加入後過濾數據
文件BX-Books.csv包含書籍數據。並且文件BX-Book-Ratings.csv包含書評分數據,其中ISBN是來自兩個文件的共同列。文件之間的內部連接使用此列完成。
我想獲得2002年出版的書籍。
我已經使用了下面的腳本,但我得到了0條記錄。
grunt> BookXRecords = LOAD '/user/pradeep/BX-Books.csv' USING PigStorage(';') AS (ISBN:chararray,BookTitle:chararray,BookAuthor:chararray,YearOfPublication:chararray, Publisher:chararray,ImageURLS:chararray,ImageURLM:chararray,ImageURLL:chararray);
grunt> BookXRating = LOAD '/user/pradeep/BX-Book-Ratings.csv' USING PigStorage(';') AS (user:chararray,ISBN:chararray,rating:chararray);
grunt> BxJoin = JOIN BookXRecords BY ISBN, BookXRating BY ISBN;
grunt> BxJoin_Mod = FOREACH BxJoin GENERATE $0 AS ISBN, $1, $2, $3, $4;
grunt> FLTRBx2002 = FILTER BxJoin_Mod BY $3 == '2002';
「描述BxJoin_Mod」是什麼?輸出?你是否也有2002年的YearOfPublication數據? – Amit
grunt> DESCRIBE BxJoin_Mod; BxJoin_Mod:{ISBN:chararray,BookXRecords :: BookTitle:chararray,BookXRecords :: BookAuthor:chararray,BookXRecords :: YearOfPublication:chararr ay,BookXRecords :: Publisher:chararray} –
是的,我的數據有YearOfPublication == 2002 –