如何解决Hadoop猪拉丁语无法流式传输python脚本
| 我有一个简单的python脚本(moo.py),我正在尝试流式传输import sys,os
for line in sys.stdin:
print 1;
我尝试运行这个猪脚本
DEFINE CMD `python moo.py` ship(\'moo.py\');
data = LOAD \'s3://path/to/my/data/*\' AS (a:chararray,b:chararray,c:int,d:int);
res = STREAM data through CMD;
dump res;
当我在本地运行这个Pig脚本(pig -x local)时,一切都很好,
但是当我在没有-x local的情况下运行它时,它会打印出此错误
[main]错误org.apache.pig.tools.grunt.Grunt-错误2017:创建作业配置时发生内部错误。
[日志文件]
原因:java.io.FileNotFoundException:文件moo.py不存在。
任何想法?
解决方法
这很可能是相对路径的问题。
尝试:
DEFINE CMD `python moo.py` ship(\'/local/path/to/moo.py\');
这也可能是读/写/执行权限的问题。
,问题是我使用的是ship()
函数而不是cache()
而ship()
工作文件-将本地文件从主机传递到从机
从站使用“ 4”从可访问的位置获取文件
例如亚马逊上的s3
希望对任何人有帮助:]
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。