我知道 Pig 在完成这些场景时返回不同的代码:
返回代码 0:所有作业都成功返回代码 1:用于可检索的错误返回代码 2:所有作业都失败返回代码 3:某些作业失败
在我的代码中,我想根据MapReduce作业的成功采取适当的操作。怎么做呢?
猪错误保存在日志中,但是,我应该使用什么机制来知道成功执行的猪脚本?
如果您使用 shell 脚本运行 pig 脚本,则可以检查上次执行的脚本的状态,如果返回 0,则只有您可以继续第二步,如果第一步失败,它可能会显示错误消息。
./pig_script.sh
if [ $? -eq 0 ]; then
echo "Succesfully finished"
else
echo "Failed"
fi
如果您正在使用任何框架工作或调度工具,如Oozie或Autosys,则有不同的处理方式。