PIG 中的 SUM 函数

SUM function in PIG

开始学习 Pig 拉丁脚本并卡在以下问题上。我已经经历过关于同一主题的类似问题,但没有任何运气!想要找到所有年龄字段的 SUM。

  DUMP X;
(22)(19)
grunt> DESCRIBE X;
X: {age: int}

我尝试了几个选项,例如:

Y = FOREACH ( group X all ) GENERATE SUM(X.age);

但是,低于异常。

 Invalid field projection. Projected field [age] does not exist in schema: group:chararray,X:bag{:tuple(age:int)}.

感谢您的宝贵时间和帮助。

我认为 Y 投影应该像您写的那样工作。这是相同的小示例代码,对我来说效果很好。

 X = LOAD 'SO/sum_age.txt' USING PigStorage('\t') AS (age:int);
 DESCRIBE X;
 Y = FOREACH ( group X all ) GENERATE 
     SUM(X.age);
 DESCRIBE Y;
 DUMP Y;

所以你的问题看起来很奇怪。我使用了以下输入数据:

-bash-4.1$ cat sum_age.txt 
22
19

你能用我在这里插入的脚本对相同的数据进行尝试吗?