我在使用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)
1条答案
按热度按时间voj3qocg1#
pig的二进制分布是根据hadoop1.x编译的。您需要根据2.x(在我的例子中是2.2)重新编译它才能让它工作。试试这个:
(来源)