如何用拉丁猪按地区分组结果?

How to group result by region with pig latin?

我是 Hadoop PIG 的新手,我有一个如下所示的数据集:

region_id        region         participation   score

    1             SSA               YES          10
    1             SSA               NO           22
    2             MONTPELIER        YES          15
    ....

我想计算每个地区的分数总和。我正在寻找的最终显示是:
REGION - SCORE,例如:

SSA - 32

我加载了我的数据:

data = load '/user/cloudera/datapi/pigdata.csv' using PigStorage (',') AS
 (id:int, region:chararray, participation:chararray, score:int);

然后按地区对数据进行分组:

split_region = GROUP data by region;

最后:

RES= foreach split_region GENERATE SUM(data.score), data.region;

RES 变量包含每个区域的得分总和,但它显示该区域的所有出现次数,如下所示:

(32 , {SSA,SSA})

缺少什么 command/instruction 来显示 (32, SSA)

使用group代替data.region

RES = foreach split_region GENERATE SUM(data.score), group;

有关来源,请参阅 here。当您使用 GROUP 运算符时, 第一个字段名为 "group"(不要将其与 GROUP 运算符混淆)并且与组键的类型相同。

Group算子用于将所有key相似的记录放入同一个包中。这有助于我们对列执行聚合。