Avro Map Reduce - 未找到AvroInputFormat错误

时间:2013-12-26 13:45:15

标签: hadoop mapreduce avro

到目前为止,我已经从互联网上的各种来源中了解到这一点。

  

Avro mapred和Avro不属于CDH4(Cloudera Distribution),我必须使用HADOOP_CLASSPATH = avro.jar手动设置它:avro-mapred.jar

我已经这样做了,当我在我的伪群集上运行我的工作时,它抛出以下异常:

  

13/12/27 00:47:40 WARN mapred.JobClient:使用GenericOptionsParser解析参数。应用程序应该实现相同的工具。

     

13/12/27 00:47:40 INFO mapred.FileInputFormat:要处理的总输入路径:1

     

13/12/27 00:47:41 INFO mapred.JobClient:正在运行的职位:job_201312221245_0017

     

13/12/27 00:47:42 INFO mapred.JobClient:map 0%reduce 0%

     

13/12/27 00:47:57 INFO mapred.JobClient:Task Id:attempt_201312221245_0017_m_000000_0,Status:FAILED

     

java.lang.RuntimeException:java.lang.RuntimeException:java.lang.ClassNotFoundException:未找到类org.apache.avro.mapred.AvroInputFormat

我的工作如下:

  

hadoop jar build / libs / hadoop-boilerplate-1.0.jar CustomerMapReduce transactions / input transactions / output1 -libjars /path/to/libs/avro-1.7.4.jar,/path/to/libs/avro-mapred -1.7.4.jar

1 个答案:

答案 0 :(得分:0)

您应实施工具并使用 getConf()进行作业配置。

public class SomeClass extends Configured implements Tool {
    @Override
    public int run(String[] args) throws Exception {
        Configuration conf = getConf();
        ...
    }
}