过滤出城市,年份和温度使用Pig?

rsl1atfo  于 2021-06-24  发布在  Pig
关注(0)|答案(1)|浏览(176)

记录:

Pune,2007,31.5
Pune,2007,30.5
Pune,2008,34.5
Blre,2009,13.0
Blre,2009,10.5

我正在使用的脚本:

grunt> A = LOAD '/home/cloudera/temp' using PigStorage(',') AS (city:chararray,year:int,temp:double);
grunt> B = group A by city;
grunt> C = FOREACH B GENERATE group, MAX(A.temp);

输出:

Pune, 34.5
 Blre, 13.0

预期产量:

Pune, 2007, 31.5
 Pune, 2008, 34.5
 Blre, 2009, 13.0

怎样才能达到这个效果,提前谢谢。

pepwfjgg

pepwfjgg1#

按城市和年份分组。

A = LOAD '/home/cloudera/temp' using PigStorage(',') AS (city:chararray,year:int,temp:double);
B = group A by (city,year);
C = FOREACH B GENERATE FLATTEN(group) AS (city,year), MAX(A.temp);

相关问题