Пользовательский формат ввода для разделения ввода в hadoop

#java #hadoop #mapreduce #input-split

#java #hadoop #mapreduce #ввод-разделение

Вопрос:

Могу ли я получить целое input split в mapper, а не каждую строку inputsplit в mapper.

Для этого мне нужно реализовать свой собственный пользовательский формат ввода. но если я пишу WholeFileInputFormat

Означает ли это, что картограф получает всю строку или весь ввод?

Решает ли NLineInputFormat мою проблему?

Ответ №1:

Я бы не стал беспокоиться NLineInputFormat . Вероятно, вы не всегда знаете, что такое N, и вам не нужны накладные расходы на формат ввода, считывающий каждый файл, чтобы найти смещения байтов строки.

WholeFileInputFormat Отсюда (я предполагаю, что вы ссылаетесь) передаст методу весь файл в качестве значения map .

Комментарии:

1. Но является ли это полным входным файлом или разделением ввода. Если это полный входной файл — как Hadoop может управлять файлом при использовании WholeInputFormat, поскольку map получает все содержимое файла, и распараллеливание также не выполняется..