2014-10-09 4 views
4
  1. Подаем .jar файл с помощью команды Hadoop баночки
  2. Он попадет в главном узле

Будет Hadoop команды банки скопировать файл банки для всех подчиненных узлов и начать выполнение или, как это работает, и кто это делает? трекер задания или Namenode?Hadoop команда баночки Исполнение

ответ

4

Команда hadoop jar сообщает hadoop, чтобы выполнить задание в кластере, предоставив jarfile, пути ввода, пути вывода. jar-файл содержит конфигурацию Job и все карты и сокращают код.

Шаги:

  1. Работа клиента ПРЕДСТАВЛЯЕТ Работа в JobTracker (JT). В фоновом режиме он копирует двоичные файлы, содержащие код Config, Mapper и Reducer, информацию о входе и выходе, в HDFS в централизованной области, которая близка к Task Trackers (TTs). После того, как TTs необходимо использовать этот код, они просто загружают его локально в datanode, так что, когда Map и Reduce tasks standup, они используют этот код для запуска локальных данных.

  2. JT запрашивает имяNode о локациях данных и именах узлов данных, которые содержат данные.

  3. С этой информацией JT разговаривает с TT и создает план выполнения, рассматривая TTS, которые наиболее близки к данным, если у них есть доступные слоты для выполнения. Если это не так, то он идет на место в стойке и обнаруживает, что любые TT в одной стойке имеют доступные слоты. Если все еще не удалось найти, найдите TT в любой стойке/любой местности.

  4. Основываясь на плане выполнения, JT представляет работу с TT. Теперь TTs standup Map и Reduce Tasks и выполняют данные.

  5. ТТ регулярно сообщают о прогрессе и сердцебиениях в JT (по умолчанию каждые 5 секунд). Каждая из задач «Карта» и «Уменьшение» сообщает о своем прогрессе/завершении/ошибке в JT через TT. i. Задачи Mapper и Reducer передают отчеты TT и TT в JT. Если задачи MR будут умирать, тогда TTs сообщит об этом JT, JT запустит другие задачи MR, чтобы справиться с ошибкой.

  6. После того, как все картографы сделали со своими задачами, JT сигналы ТТ сказать Редукторы для запуска их исполнения редуктора (например, запустить уменьшить() метод)

  7. После того, как все Mappers и Переходники закончены, и окончательный вывод записывается , JT обновляет свой статус до SUCCESS и уведомляет клиента.

+1

Прохладный, не могли бы вы показать некоторую цитату об этом, где я могу смотреть дальше. Кажется, он аналогичен и используется в YARN hadoop 2.0, где они копируют банку в HDFS, а затем при необходимости копируют в datanode. Спасибо, я не могу повышать :(менее 15 репутации ... :) – Muthu

+1

Учебники Cloudera и Hadoop Definitive Guide, хороший start.http: //cloudera.com/content/cloudera/en/training/courses/udacity/mapreduce.html – Sekhar

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