2014-09-04 40 views
2

豬0.12介紹流蟒蛇的UDF,但他們是實驗性的,所以他們需要的Hadoop 1.如何使用Python在Amazon EMR流在豬的UDF

http://pig.apache.org/docs/r0.12.1/udf.html#python-udfs

然而,只有亞馬遜提供的AMI可以使用豬0.12 AMI 3.1.0,使用Hadoop的2.4,不Hadoop的1:

http://docs.aws.amazon.com/ElasticMapReduce/latest/DeveloperGuide/emr-plan-hadoop-version.html

所以,支持養豬的正確版本的唯一AMI不支持的Hadoop版本是正確的。有沒有辦法讓流式UDF在EMR上工作?

回答

2

您可以使用引導操作在EMR上安裝您自己的豬版本。您需要創建一個沒有安裝在AMI(2.4.5版本)上的Pig的羣集 - 然後安裝您喜歡的Pig版本(0.12)

+0

我使用EMR AMI 3.0.4和Apache Pig 0.11。 1.1預安裝,我只是從tarball中提取Apache Pig 0.13.0,並更新PATH指向0.13.0而不是0.11.0。我會假設同樣的雲也會與老的AMI一起完成。 – 2014-09-05 18:27:14

+0

這也應該工作。但是,Pig不是AMI本身的一部分,而是在羣集的實例化過程中安裝的。所以,你可以改變你的羣集定義,不要預先安裝它。 – user1452132 2014-09-06 12:24:55