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
你能用我在这里插入的脚本对相同的数据进行尝试吗?
开始学习 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
你能用我在这里插入的脚本对相同的数据进行尝试吗?