PIG - 尝试在表格中找到最大组月份

时间:2016-04-28 18:06:01

标签: hadoop apache-pig

enter image description here

上面的图片代表下面的生成声明,也描述了

  D = FOREACH C GENERATE $0 AS time, $1 AS perf_temp_count;

  DUMP D;
  DESCRIBE D;

我的问题当前上面的分组是我的月份和小时(miltary时间),我试图找到每个月旁边的最大数字。 1到12,现在我只是显示月份,小时和数字。

我的预期结果是

  (1, 4) 9
   ....
   remaning months
   ....
  (12, 3) 10

这又是descibes(月,小时),最大数量

1 个答案:

答案 0 :(得分:0)

B = GROUP A BY (month, hour);
C= FOREACH B GENERATE group as time,COUNT(A.temp) as cnt
X = GROUP C By time;
Y = FOREACH X GENERATE group, MAX(C.cnt) as mcount;

我不知道为什么,但是Agrregating(MAX)正好在另一个聚合(COUNT)之后是一个问题,或者我没有正确地重新定义名称。