Как только вы получите максимальный год для каждой страны, объедините этот набор данных с первым соотношением нагрузки, а затем сгруппируйте по стране и году, чтобы получить сумму населения.
Предполагается, что вы загрузили данные в отношение, называемое данными. Соедините данные с b по стране и году.
data = load 'data_file' using PigStorage(',') as (country:chararray,year:int,population:int);
a = group data by country;
b = foreach a generate flatten(group) as country, MAX(data.Year) as year;
c = join data by (country,year), b BY (country,year);
c1 = foreach c generate data.country as country,data.year as year,data.population as population;
d = group c1 by c1.country,c1.year;
e = foreach d generate FLATTEN(group) as country,year,SUM(d.population);
dump e;