0

私が豚に望んでいることがわかっている一般的なことは、次のようなデータとの小さな関係です

A = id, attribute1:int, attribute2:double...

のようなデータとの大きな関係

B = id, differentattribute:chararray...

B をフィルタリングして、すべてのタプルが A に含まれる ID を持つようにします。

C = JOIN A by id, B by id;
D = FOREACH C GENERATE B::id, B::differentattribute;

しかし、それは信じられないほど非効率的です。PIG FILTER で IN 原因を使用すると、IN 句がないと主張されます...そうでない場合、UDF で IN を模倣するより効率的な方法はありますか?

4

1 に答える 1

1

Aメモリに収まる場合は、レプリケートされた結合を確認できます。

フラグメント レプリケート結合は、1 つ以上のリレーションがメイン メモリに収まるほど小さい場合に適切に機能する特別なタイプの結合です。そのような場合、Pig は非常に効率的な結合を実行できます [...]

于 2012-12-18T17:41:26.100 に答える