Я знаю, что картограф всегда выполняет пары операций с картами, а редуктор всегда выполняет пары операций сокращения. Другими словами, сопоставление между оператором mapper (редуктор) и map (reduce) является одним для многих.
Теперь у меня есть вопрос, является ли сопоставление между tasktracker и mapper «один-к-одному» или «один ко многим»?Является ли tasktracker соответствующим картеру или редуктору в hadoop?
ответ
Прежде всего я объясню вам, что именно Целевой трекер:
TaskTracker является узлом в кластере, который принимает задания - Карту, Сократить и операцию Перемешать - от JobTracker.
Каждый TaskTracker сконфигурирован с набором слотов, это указывает количество задач, которые оно может принять. Когда JobTracker пытается найти место для планирования задачи в рамках операций MapReduce, сначала он ищет пустой слот на том же сервере, на котором размещается DataNode, содержащий данные, а если нет, он ищет пустой слот на машине в такой же стойка.
TaskTracker запускает отдельные процессы JVM для выполнения фактической работы; это означает, что отказ процесса не приведет к отключению отслеживания задач. TaskTracker контролирует эти порожденные процессы, захватывая коды вывода и выхода. Когда процесс завершается, успешно или нет, трекер уведомляет JobTracker. TaskTrackers также отправляют сообщения Heartbeat на JobTracker, обычно каждые несколько минут, чтобы заверить JobTracker, что он все еще жив. Это сообщение также сообщает JobTracker о количестве доступных слотов, поэтому JobTracker может оставаться в курсе того, где в работе кластера можно делегировать.
да и это приводит нас к точке, что одна задача отслеживания делать много операций с работы трекера (фактические рабочие места, то есть, карта уменьшить задачи), так что ответ на ваш вопрос будет
один (работа трекер) для многих (отслеживание задач)
Неверная последняя строка.
Корректировка: в кластере есть один отслеживатель задач в DataNode, и в кластере есть только один отслеживатель заданий на NameNode, это предполагает, что вы находитесь в кластере Hadoop (без привязки к YARN) (Hadoop 1. Икс).
В mapreduce - количество картографов зависит от количества входных разрывов.
Также будет одна задача отслеживания на узел данных
В случае, если имеется несколько входных расщепляется внутри одного узла-шпагате (согласно оптимизации локальности данных) будет выполняться в очереди в соответствующем компьютере JVM (по умолчанию для выполнения операций есть два JVM на каждый узел).
Учитывая описанный выше сценарий, будет отображаться одностороннее сопоставление Tracker задач с именем MAPPER (s).