从Pig脚本调用Python函数



我是猪的新手,想在我通过Putty连接到服务器后从Pig调用本地Python文件。以下是我尝试过的代码和我收到的错误消息:

REGISTER ‘myudf.py’ using jython as my_udf

错误消息在下面,我不知道如何告诉Pig Py文件的路径。

File myudf.py does not exist

我尝试的另一个代码是:

DEFINE mycommand `python myudf.py` ship(‘C:UsersmynameDocumentscodemyudf.py’);

错误消息是

unexpected character ’S’

这听起来可能非常容易,但是我花了几个小时并失败了。任何建议都将不胜感激。

听起来像Python文件已保存在您自己的计算机上,但是您正在服务器上运行Pig。服务器无法访问计算机上的文件。

您可以使用WINSCP(假设您在Windows上(等软件传输文件,也可以在服务器上启动文本编辑器,然后将文本从Python文件复制/粘贴到文本编辑器中。例如,Putty中的vi myudf.pyemacs myudf.py将启动文本编辑器,并在保存后在服务器上创建一个名为myudf.py的文件。

创建了Python文件后,您可能需要在REGISTER语句中在服务器上包含完整的文件路径,以避免混淆。(pwd在服务器上显示您的当前目录。(

最新更新