Hadoop で、何かをグループ化して順序付けしたい場合に Java を記述すると、グループ キーもデフォルトで辞書順でソートされ、すべて 1 つの MR ジョブで実行されるため、別の順序付けジョブを節約できます。
しかし、今は 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)
グループキーの順序が文字列の長さによって異なりますが、アルファベット順である理由.そのように、グループのコンパレータプラグインがないため、別のキー順序ジョブ、合計2つのジョブを実行する必要があります.
グループと注文を一度に解決する方法はありますか? 私は非常に感謝します。