0
在Hadoop我有很多看起來像這樣的: (item_id,owner_id,counter)
- 可能有重複,但總是item_id
有相同的owner_id
!Hadoop Pig GROUP by id,get owner_id?
我想要得到的counter
的總和每個item_id
,所以我有以下腳本:
alldata = LOAD '/path/to/data/*' USING D; -- D describes the structure
known_items = FILTER alldata BY owner_id > 0L;
group_by_item = GROUP known_data BY (item_id);
data = FOREACH group_by_item GENERATE group AS item_id, OWNER_ID_COLUMN_SOMEHOW, SUM(known_items.counter) AS items_count;
的問題是,在FOREACH
,如果我想利用known_items.owner_id
- 這將是一個元組有所有分組item_id
的總和。獲得第一個業主的最有效方式是什麼?
按照定義,每個item_id都是一樣的。謝謝你的解決方案,我會測試一下。 – ddinchev
同樣的定義,但你永遠不知道是否有什麼地方變得混亂,以至於你的數據不符合你的期望。 :) –