hadoop2-mapreduce问题使用pig over hadoop

8fq7wneg  于 2021-06-21  发布在  Pig
关注(0)|答案(1)|浏览(374)

我在使用hadoop2(yarn)和pig运行mapreduce程序时遇到了一个问题。我可以使用pig脚本从cassandra读取数据,但是在运行mapreduce时,它会抛出以下异常:

Exception in thread "main" java.lang.IncompatibleClassChangeError: Found interface org.apache.hadoop.mapreduce.JobContext, but class was expected
    at org.apache.cassandra.hadoop.ColumnFamilyOutputFormat.checkOutputSpecs(ColumnFamilyOutputFormat.java:80)
    at org.apache.pig.newplan.logical.rules.InputOutputFileValidator$InputOutputFileVisitor.visit(InputOutputFileValidator.java:80)
    at org.apache.pig.newplan.logical.relational.LOStore.accept(LOStore.java:66)
voj3qocg

voj3qocg1#

pig的二进制分布是根据hadoop1.x编译的。您需要根据2.x(在我的例子中是2.2)重新编译它才能让它工作。试试这个:

ant clean jar-withouthadoop -Dhadoopversion=23

(来源)

相关问题