Запустите приложение Hadoop - PullRequest
       0

Запустите приложение Hadoop

3 голосов
/ 16 декабря 2011
  1. Может ли приложение Hadoop загружаться на любом из узлов кластера, независимо от типа узла?

  2. Должно ли приложение загружаться только на одном изузлы?

  3. Перемещает ли Hadoop код в соответствующие узлы рядом с данными?

  4. Используется ли Java RMI для перемещения кода?

@ EDIT

На каждом установленном узле Hadoop должны быть явно назначены главные узлы путем установки fs.default.name из core-site.xml для Namenode и mapred.job.tracker из mapred-stie.xml для Jobtracker.

Однако подчиненные узлы Datanode и Tasktracer не могут быть назначены явно, не так ли?

Вместо этого они динамически присоединяются к кластеру при запуске его демона Hadoop или покидают кластер при остановке демона, верно?

Если установленный узел Hadoop не назначен ни мастеру, ни его hadoopдемон работает, он все еще может запустить приложение Hadoop, верно?

@ 2nd EDIT

Кажется, что подчиненные узлы также должны быть явно перечислены в файле conf/slavesна главных узлах, чтобы все вместе начать или остановить там.

1 Ответ

4 голосов
/ 16 декабря 2011
  1. Задания Hadoop могут запускаться из любого места, если конфигурация core-site.xml настроена правильно. Это не обязательно должен быть узел данных или главный узел. В больших кластерах обычно используется «узел запроса», на котором не работает ни один из демонов Hadoop.

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

  3. Hadoop реплицирует файлы JAR повсюду, поэтому код доступен локально. Я не думаю, что это использует RMI, но я могу ошибаться. В конце концов, все это отвлечено от пользователя и не является тем, на что вам нужно обращать внимание.

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