@ cabad
На первый взгляд кажется, что оператор RANK будет работать, но вам не гарантируется увеличение идентификатора строки без каких-либо ограничений для ваших данных.
Проблема возникает из-за того, что все строки, предоставленные оператору ранжирования, имеют одинаковый ранг. Если вы можете гарантировать, что никакие две строки не имеют одинаковых полей, используемых для ранжирования, тогда этот подход может сработать, но я думаю, что я бы поставил его в подходе «квадратный колышек с круглым отверстием».
См. Этот пример из [документов] http://pig.apache.org/docs/r0.11.0/basic.html#rank (ранги 2, 6, 10):
C = rank A by f1 DESC, f2 ASC;
dump C;
(1,Tete,2,N)
(2,Ranjit,3,M)
(2,Ranjit,3,P)
(4,Michael,8,T)
(5,Jose,10,V)
(6,Jillian,8,Q)
(6,Jillian,8,Q)
(8,JaePak,7,Q)
(9,David,1,N)
(10,David,4,Q)
(10,David,4,Q)