Класс Mapper-Reducer по умолчанию

Предположим, у меня есть два набора данных:

hello world
bye world

и

hello earth
new earth

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

0       hello world
0       hello earth
12      new earth
12      bye world

Я в замешательстве, почему ключ вроде 0 и 12?! Я просто использовал преобразователь и редьюсер по умолчанию, когда я закомментировал эти строки в main() ::

//    job.setMapperClass(Map.class);
//    job.setCombinerClass(Reduce.class);
//    job.setReducerClass(Reduce.class);

Итак, мой вопрос: какой здесь выходной ключ? почему это выглядит как 0, 0, 12, 12?


person Ronin    schedule 26.10.2013    source источник


Ответы (1)


0,0,12 и 12 — файловые смещения во входных данных. В случае текстовых входов K для преобразователя - это смещение файла, а значение - строка ввода. Проверьте это для Дополнительная информация.

person Praveen Sripati    schedule 26.10.2013