比较基于猪场的元组

时间:2016-08-08 14:28:45

标签: hadoop apache-pig

(ABC,****,tool1,12)
(ABC,****,tool1,10)
(ABC,****,tool1,13)
(ABC,****,tool2,101)
(ABC,****,tool3,11)

以上是输入数据

以下是我的猪数据集。

  

架构是:用户名,IP,工具,持续时间

我想添加相同工具的持续时间

输出

(ABC,****,tool1,35)
(ABC,****,tool2,101)
(ABC,****,tool3,11

1 个答案:

答案 0 :(得分:1)

使用GROUP BY并在持续时间上使用SUM。

A = LOAD 'data.csv' USING PigStorage(',') AS (Username:chararray,ip:chararray,tool:chararray,duration:int);
B = GROUP A BY (Username,ip,tool);
C = FOREACH B GENERATE FLATTEN(group) AS (Username,ip,tool),SUM(A.duration);
DUMP C;