2015-11-11 4 views
0

Я из фона Mainframes и пытаюсь понять различные форматы ввода в Hadoop. Может кто-нибудь пожалуйста, объяснить все ниже трех входных форматов:Понимание TextInputFormat в Hadoop

- TextInputFormat - KeyValueInputFormat - SequenceFileInputFormat

ответ

0

TextInputFormat: Он читает строки из текстовых файлов и обеспечивает смещение линии, как ключ к Mapper и фактическая строка как значение для картографа.

TextInputFormat работает как входной формат для текстовых файлов. Файлы разбиваются на строки. Для сигнализации конца строки используются либо возврат линии, либо возврат каретки. Ключи позиции в файле, а значения в строку текста ..

KeyValueTextInputFormat (старый KeyValueInputFormat): Этот формат также обрабатывает каждую строку ввода в виде отдельной записи. Все до первого символа табуляции отправляется как ключ к Mapper, а остальная часть строки отправляется как значение в mapper.

В то время как TextInputFormat обрабатывает всю строку как значение, KeyValueInputFormat разбивает линию непосредственно на ключ и значение, ища символ табуляции.

SequenceFileInputFormat: читает специальные двоичные файлы, специфичные для Hadoop. Эти файлы включают в себя множество функций, предназначенных для быстрого считывания данных в устройствах Hadoop.

Файлы последовательности сжимаются в блоках и обеспечивают прямую сериализацию и десериализацию нескольких произвольных типов данных (а не только текста). Файлы последовательности могут быть сгенерированы как выходные данные других задач MapReduce и являются эффективным промежуточным представлением для данных, которые передаются из одного задания MapReduce в пыльник.

Смежные вопросы