hadoop pig 版本不兼容問題

    在Hadoop2.3.0pig0.12.0安裝完後,運行過程當中,hadooppig grunt均運行正常可是dump數據報下面的錯誤:java

ERROR 1066: Unable to open iterator for alias actorapache

org.apache.pig.impl.logicalLayer.FrontendException: ERROR 1066: Unable to open iterator for alias actorgrunt

    at org.apache.pig.PigServer.openIterator(PigServer.java:880)oop

    at org.apache.pig.tools.grunt.GruntParser.processDump(GruntParser.java:774)ui

    at org.apache.pig.tools.pigscript.parser.PigScriptParser.parse(PigScriptParser.java:372)spa

    at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:198)ip

    at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:173)hadoop

    at org.apache.pig.tools.grunt.Grunt.run(Grunt.java:69)it

    at org.apache.pig.Main.run(Main.java:541)io

    at org.apache.pig.Main.main(Main.java:156)

    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

    at java.lang.reflect.Method.invoke(Method.java:606)

    at org.apache.hadoop.util.RunJar.main(RunJar.java:212)

Caused by: java.io.IOException: Job terminated with anomalous status FAILED

    at org.apache.pig.PigServer.openIterator(PigServer.java:872)

    ... 12 more

    致使問題出現的緣由是pig已經編譯的jar文件和hadoop的版本不兼容致使的,能夠採用從新編譯的方法解決問題,以下所示:

(1) cd  ${PIG_HOME}

(2) mv pig-0.12.0-withouthadoop.jar pig-0.12.0-withouthadoop.jar.bak

(3) mv pig-0.12.0.jar pig-0.12.0.jar.bak

(4) ant clean jar-withouthadoop -Dhadoopversion=23

   編譯完成後將在${PIG_HOME}/build目錄下生成:

   pig-0.12.0-SNAPSHOT.jar, pig-0.12.0-SNAPSHOT-withouthadoop.jar

(5) 將上一步生成的兩個文件Copy${PIG_HOME}下,並進行更名:

   pig-0.12.0-SNAPSHOT.jar  -->  pig-0.12.0.jar

   pig-0.12.0-SNAPSHOT-withouthadoop.jar  -->  pig-0.12.0-withouthadoop.jar

相關文章
相關標籤/搜索