私はAに保存されたタプルを持っています:
{group: chararray,word_count: long}
したがって、すべての word_count 変数を合計し、変数 T に格納します。
T: {long}
今、次のような変数 X があります。
(word1,12,word1,1)
(word2,22,word2,4)
(word3,32,word3,14)
Tに格納されている値に対して1、4、および14で数学演算を行う必要がありますが、for eachはTを認識しません。
result = FOREACH X GENERATE $3*T;
失敗します。XにはTというフィールドがないため、Tを認識しません。
だから、私がしたことは、私は X と T を交差させます temp = CROSS X, T
これは正しい方法ですか?? 私は豚が初めてです。私の解決策は、あまりエレガントではないようです。