В Hadoop мы можем контролировать количество узлов на задание программно? - PullRequest
3 голосов
/ 20 января 2012

Я выполняю анализ сроков выполнения работ. У меня есть предварительно настроенный кластер с 8 узлами. Я хочу выполнить задание с 8 узлами, 6 узлами, 4 узлами и 2 узлами соответственно и записать соответствующее время выполнения. Есть ли способ, которым я могу сделать это программно, то есть, используя соответствующие настройки в конфигурации работы в коде Java?

Ответы [ 2 ]

1 голос
/ 21 января 2012

Есть несколько способов. Предпочел бы в том же порядке.

  1. exclude можно использовать, чтобы запретить некоторым трекерам задач / узлам данных подключаться к трекеру заданий / узлу имен. Проверьте это FAQ . Используемые свойства: mapreduce.jobtracker.hosts.exclude.filename и dfs.hosts.exclude. Обратите внимание, что после изменения файлов имя узла и средство отслеживания заданий необходимо обновить с помощью команд mradmin и dfsadmin с параметром refreshNodes, и кластеру может потребоваться некоторое время, чтобы выполнить настройку, поскольку блоки данных должны быть перемещены из исключенных узлов.

  2. Другой способ - остановить отслеживание задач на узлах. Тогда задачи сопоставления / сокращения не будут запланированы на этом узле. Но данные будут по-прежнему выбираться со всех узлов данных. Таким образом, узлы данных также должны быть остановлены. Убедитесь, что узел имени выходит из безопасного режима и коэффициент репликации также установлен правильно (для двух узлов данных коэффициент репликации не может быть равен 3).

  3. A Capacity Scheduler также можно использовать для ограничения использования кластера конкретной задачей. Но когда ресурсы свободны / свободны, тогда планировщик будет выделять ресурсы сверх емкости для лучшего использования кластера. Я не уверен, что это можно остановить.

0 голосов
/ 23 января 2012

Ну, ты хорошо разбираешься в сценариях? Если это так, поиграйте со стартовыми скриптами демонов. Поскольку это экспериментальная установка, я думаю, что перезапуск hadoop для каждого эксперимента должен быть в порядке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...