将参数传递给pig jython脚本

时间:2011-09-17 21:35:59

标签: jython apache-pig

我想在python中嵌入一个pig脚本,但是我需要将一些参数传递给python脚本,它们似乎不会填充。

如果我直接调用我的猪脚本,我可以使用:$PIGDIR/bin/pig -f $SCRIPT_DIR/../pig/score_cert_messages.pig -param libDir=DYNAMIC_STRING并正确绑定libDir。

但是,以同样的方式加载我的python脚本时,我在sys.argv中没有得到任何内容。通过pig加载python时,-param值是否可访问(在python代码中),或者我是否必须使用jython手动调用脚本并生成scriptContext(如果有,任何人都有样本)?

2 个答案:

答案 0 :(得分:1)

这是一个已知问题。检查https://issues.apache.org/jira/browse/PIG-2165

答案 1 :(得分:0)

差不多两年后,如果没有解决方法,我仍然无法做到。基本上,我已经在我的脚本中创建了一个环境变量:

$ export file_in=filename; pig -useHCatalog ./POC_Python_Wrapper.py

并在脚本中:

import os
file_in = os.getenv('file_in', 'Unknown')