Как AM выбирает узел для каждой задачи сокращения? - PullRequest
0 голосов
/ 11 сентября 2018

Я выполняю два задания примера подсчета Word в одном кластере (я запускаю hadoop 2.65 локально с моим мультикластером), где мой код запускает два задания одно за другим. Если оба задания используют один и тот же маппер, редуктор и т. Д., Но у каждого из них есть свой Partitioner .

Почему существует другое распределение задачи сокращения на узлах для второго задания? Я идентифицирую узел задачи сокращения по IP-адресу узла ( Java получает мой IP-адрес ). Я знаю, что ключи перейдут к другой задаче сокращения, но я хочу, чтобы их назначение не изменилось.

Например, у меня есть пять разных ключей и четыре задачи уменьшения. Распределение на задание 1:

  1. partition_1 -> NODE_1
  2. partition_2 -> NODE_1
  3. partition_3 -> NODE_2
  4. partition_4 -> NODE_3

Распределение на задание 2:

  1. partition_1 -> NODE_2
  2. partition_2 -> NODE_3
  3. partition_3 -> NODE_1
  4. раздел_4 -> NODE_3

1 Ответ

0 голосов
/ 11 сентября 2018

В hadoop у нас нет места для редукторов, поэтому выбирайте узлы для редукторов в зависимости от ресурсов. Невозможно заставить Hadoop запускать каждый редуктор на одном узле в двух заданиях.

...