Функция MAX(Count) apache pig Latin

В приведенной ниже программе я пытаюсь сделать это в Apache Pig как есть и с неструктурированными данными.

i) У меня есть набор данных, который содержит название улицы, город и штат:

ii) Группировка по штатам

iii) Я беру COUNT(*) состояний в наборе данных. Теперь мой o/p будет выглядеть как statename,count===›сколько времени это состояние будет доступно в наборе данных

программа:

realestate = LOAD DATA using pigstorage(',') as (street:string,city string,state string);

A = GROUP realestate by state;
B= FOREACH A GENERATE group , count (*)

О/П будет как

CA,14
washington,20

теперь мне нужно максимальное количество (количество), мой вывод должен быть вашингтон, 20)

как это сделать. пожалуйста, помогите мне решить проблему


person sivaraj    schedule 01.03.2017    source источник


Ответы (1)


Примените ORDER и LIMIT к сгенерированному результату

realestate = LOAD DATA using pigstorage(',') as (street:string,city string,state string);
A = GROUP realestate by state;
B = FOREACH A GENERATE group , COUNT(realestate) as c;

# Arrange the tuples based on the count in descending order
D = order B by c desc;

# Apply limit on the ordered result to get the Max value
E = LIMIT D 1;
person franklinsijo    schedule 01.03.2017