2014-02-14 5 views
0

При настройке задания «Уменьшить работу с картой» я знаю, что можно задать количество задач сокращения с помощью метода job.setNumReduceTasks(2);.Задайте количество задач карты

Можно ли задать количество задач карты?

Я не вижу никаких методов для этого.

Если такой функции нет, кто-то знает, почему эта инфраструктура имеет возможность иметь более 1 задачи сокращения, но не более 1 задачи карты?

ответ

0

Раньше существовало свойство для задания количества задач карты, которое составляло setNumMapTasks. Bur это всего лишь намек на структуру и не может гарантировать, что вы получите только указанное количество карт. Создание карты на самом деле регулируется InputFormat, которые вы используете в своей работе. И именно по этой причине он больше не поддерживается.

Если вы не довольны количеством картопостроителей созданных рамок, вы можете попробовать настройки значения из следующих 2 свойства, в соответствии с вашими требованиями:

- mapred.min.split.size
- mapred.max.split.size

0

Число задач по карте не является чем-то, что задает программист, а скорее что-то, что имеет каркас hadoop, в частности TaskTracker, который создает столько карточек, сколько количества входных расщеплений (как правило, из 64mb, но может быть изменено) InputFile от HDFS ...