Как прочитать файл последовательности Hadoop в качестве вклада в задание Hadoop?
-
27-10-2019 - |
Вопрос
У меня есть последовательный файл, в котором есть пара типов клавиш "org.apache.hadoop.typedbytes.typedbyteswritable" Я должен предоставить этот файл в качестве ввода в задание Hadoop и должен обрабатывать его только на карте. Я имею в виду, что мне не нужно делать ничего, что нужно уменьшить.
1) Как я буду указать файл iNputFormat как последовательныйфил?
2) Что будет подписью функции карты.
3) Как я получу вывод с карты вместо уменьшения?
Решение
1) Как я буду указать файл iNputFormat как последовательныйфил?
Установить SequenceFileAsbinaryInputFormat как входной формат. Здесь код для класса последовательно -фонбинарнопультиформы.
Вот код
JobConf conf = new JobConf(getConf(), getClass());
conf.setInputFormat(SequenceFileAsBinaryInputFormat.class);
2) Что будет подписью функции карты.
Карта будет вызвана с помощью байторов, написанных в виде ключа и типов значений.
3) Как я получу вывод с карты вместо уменьшения?
Установить mapred.reduce.tasks
Свойство к 0. Вывод карты станет конечным результатом задания.
Также взгляните на SequenceFileasTextInputFormat. Анкет Карта будет вызвана текстом в виде клавиш и типов значений.