如何在pig中应用global max()

3pmvbmvn  于 2021-06-24  发布在  Pig
关注(0)|答案(1)|浏览(379)

我是新手
我的数据集如下:

name  | age
-------+----
Ashis  | 60
Arun   | 22
Nirmal | 48
Ram    | 67
Amar   | 35

如何使用pig脚本获取最大年龄的记录?
我的输出应该是

Ram,67
qyzbxkaa

qyzbxkaa1#

您需要按年龄降序排列数据,并将数据限制为1,才能获得年龄最大的记录。像这样:

inputData = LOAD 'path' USING PigStorage('\t') AS (name:charray, age:long);
sortedInput = ORGER inputData BY age DESC;
topRecord = LIMIT sortedInput 1;
DUMP topRecord;

值得一提的是,这不是一个适合map reduce(通过pig)的操作,因为order和limit都没有使用并行性,您的工作将被一个reducer限制。

相关问题