我正在使用HCatalog的WebHCat API来运行Pig作业,例如:
https://cwiki.apache.org/confluence/display/Hive/WebHCat+Reference+Pig
我运行一个简单的工作没有问题,但我想将一个参数文件附加到作业,例如可以使用pig命令行的参数:--param_file
。
我认为这可以通过arg
请求的参数来实现,所以我尝试了多种方法,例如传递:
'arg': '-param_file /path/to/param.file'
或:
'arg': {'param_file': '/path/to/param.file'}
似乎没有用,错误堆栈也没多说。 我很想知道这是否可能,如果可行,如何正确实现这一点。
非常感谢
答案 0 :(得分:0)
正确使用:
'arg': ['-param_file', '/path/to/param.file']
说明: 通过传递arg中的值,
'arg': {'-param_file': '/path/to/param.file'}
webhcat为命令提示符生成“-param_file”。 Pig抛出以下错误
ERROR org.apache.pig.Main - ERROR 2999: Unexpected internal error. Can not create a Path from a null string
使用逗号而不是冒号运算符将路径作为第二个参数传递给file。 webhcat将生成“-param_file”“/ path / to / param.file”
P.S:我在python上使用Requests库来进行REST调用