查找pig中每行的列之和

t5fffqht  于 2021-06-25  发布在  Pig
关注(0)|答案(1)|浏览(245)

我需要找到每行中列的总和。
考虑数据集

A,1,5,45,25,20
   B,5,50,5,23,12
   C,1,25,4,15,23

我试图得到如下输出

(A,96)
  (B,95)
  (C,68)

我不能使用内置 SUM 函数。我应该写习惯吗 UDF 或者有没有别的办法

ojsjcaue

ojsjcaue1#

您可以定义模式并尝试以下方法。
输入:

A,1,5,45,25,20
B,5,50,5,23,12
C,1,25,4,15,23

Pig手稿:

A = LOAD 'input' USING PigStorage(',') AS(f1:chararray,f2:int,f3:int,f4:int,f5:int,f6:int);
B = FOREACH A GENERATE f1,SUM(TOBAG(f2..));
DUMP B;

输出:

(A,96)
(B,95)
(C,68)

相关问题