在hadoop中,如果你想分组和订购某些东西并且你编写java,结果是组密钥也将默认按字典顺序排序,所有这些都是通过一个MR作业完成的,这样你就可以省去另一个订单作业。 / p>
但现在我加入使用Pig,找到一个古怪的东西。
我的输入(test.txt)是:
a
ab
abc
b
c
我的脚本是:
A=load 'test.txt' as c1:chararray;
B=group A by c1;
dump B;
输出结果为:
(a)
(b)
(c)
(ab)
(abc)
为什么它的组密钥顺序取决于字符串长度,但依字母顺序。这样我需要做另一个密钥订单作业,共有两个作业,因为组没有比较插件。
同时为团体和订单提供任何解决方案?我非常感激。