Filter Apache Pig中的计数/求和

Filter Apache Pig中的计数/求和,filter,group-by,apache-pig,Filter,Group By,Apache Pig,我是Apache Pig的初学者。有一个包含以下字段的表: table - amount:long date:string country:string 最初,我的目标是——每月统计每个国家的油田数量。例如,这将是我所需的最终结果: (Exhibit A) 201201 USA 100 201201 UK 150 201305 ITALY 200 201305 USA 120 201305 UK 20 201403 ITALY 300 数字100150200300代表所有国家每个日期的金额。

我是Apache Pig的初学者。有一个包含以下字段的表:

table - amount:long date:string country:string
最初,我的目标是——每月统计每个国家的油田数量。例如,这将是我所需的最终结果:

(Exhibit A)
201201 USA 100
201201 UK 150
201305 ITALY 200
201305 USA 120
201305 UK 20
201403 ITALY 300
数字100150200300代表所有国家每个日期的金额。达到了上述预期效果

data = ORDER table BY date ASC;

data1 = GROUP data BY (date, country);

countof_amount = FOREACH data1 GENERATE
             FLATTEN(group) AS (date, country),
             COUNT(data) AS amount_count;

countof_amount1 = order countof_amount by date ASC;
现在,我想找出所有国家/地区每个日期的所有金额总和,例如,从附件A中,我希望得到以下结果:

201201 250
201305 240
201403 300
我该怎么做呢


提前谢谢

添加最后三行即可。我在本地测试过,效果很好

table = LOAD 'input.txt' using PigStorage(' ') as(amount:long,date:chararray,country:chararray);  
data = ORDER table BY date ASC;  
data1 = GROUP data BY (date,country);  
countof_amount = FOREACH data1 GENERATE 
            FLATTEN(group) AS (date, country),  
           COUNT(data.amount) AS (amount_count);  
countof_amount1 = order countof_amount by date ASC;  

mycount =  group countof_amount1 by date;  
getFinalCount = FOREACH mycount  GENERATE group as date,SUM(countof_amount1.amount_count) as total;  
dump getFinalCount; 

删除了SQL标记,因为这是关于pig的。是否仅按
日期而不是
(日期,国家)
分组?