実際、私はPIGスクリプトを書いていて、条件の1つが満たされた場合にステートメントのセットを実行したいと考えています。
1つの変数を設定し、その変数の値を確認しました。と思います
if flag==0 then
A = LOAD 'file' using PigStorage() as (f1:int, ....);
B = ...;
C = ....;
else
again some Pig Latin statements
PIGスクリプトでこれを行うことはできますか?はいの場合、どうすればこれを実行できますか?
ありがとう。
Python Pigスクリプトのラッパーを作成できます。ドキュメントの Embedded Pig を参照してください。
[〜#〜] udf [〜#〜](たとえば、Javaで)を作成し、それをPIGスクリプトに埋め込みます。 [〜#〜] udf [〜#〜]を書き込んだ後に生成するjarファイルを「登録」する必要があります。
//(このようなもの)、あなたのJava UDF class
はUDFCondition
です。生成されたjarファイルはPigUDFCondition.jarであり、次にPIG Code
登録PigUDFCondition.jar
X = foreach A generate UDFCondition(..flag...)
バージョン0.12以降で利用可能なCASEステートメントがあります。