Avro Map Reduce - AvroInputFormat не найдена ошибка

Это то, что я понял до сих пор, читая из разных источников в Интернете.

Avro mapred и Avro не являются частью CDH4 (Распределение Cloudera), и я должен установить его вручную, используя 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: карта 0% уменьшить 0%

13/12/27 00:47:57 INFO mapred.JobClient: Идентификатор задачи: try_201312221245_0017_m_000000_0, Статус: СБОЙ

java.lang.RuntimeException: java.lang.RuntimeException: java.lang.ClassNotFoundException: класс org.apache.avro.mapred.AvroInputFormat не найден

Я выполняю работу следующим образом:

hadoop jar build / libs / hadoop -ilerplate-1.0.jar CustomerMapReduce транзакции / входные транзакции /output1 -libjars /path/to/libs/avro-1.7.4.jar,/path/to/libs/avro-mapred-1.7.4.jar

1 ответ

Вы должны реализовать Tool и использовать getConf() для настройки задания.

public class SomeClass extends Configured implements Tool {
    @Override
    public int run(String[] args) throws Exception {
        Configuration conf = getConf();
        ...
    }
}
Другие вопросы по тегам