使用Amazon Elastic MapReduce嵌入的Pig脚本

时间:2012-11-23 20:52:30

标签: amazon-ec2 apache-pig

我正在尝试运行嵌入python的Pig脚本。我弄完了 在我自己的机器上运行像pig-x这样的脚本没有问题 当地的pigRunner.py 但当我把它移到亚马逊的EC2时,我得到了一个惊人的错误:

File "pigRunner.py", line 3 in <module>
  from org.apache.pig.scripting import *
ImportError: No module named pig

[1]+ Exit 6 pig -x mapreduce pigRunner.py

有没有其他人在亚马逊上运行Python脚本时遇到问题?是 为了让他们处理,我应该做些什么特别的事情?

感谢您提供的任何帮助。

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,发现这是一个路径问题。我正在运行AMI版本'2.4.2(Hadoop 1.0.3) - 最新'。

在我的嵌入式猪python文件中,我必须在从python导入任何内容之前将以下位置添加到python路径:

#!/usr/bin/python
sys.path.append('/home/hadoop/.versions/pig-0.11.1.1/lib/pig/pig-0.11.1.1-amzn.jar/Lib')
from org.apache.pig.scripting import *

然后,jython解释器能够找到所有必要的猪模块。