У меня есть псевдо-распределенная система nutch / hadoop, которая работает нормально. Я хочу увеличить вычислительную мощность, добавив новые узлы, которые меньше главного (HD в 3 раза меньше) и, конечно же, дешевле.
Поскольку репликация HDFS по умолчанию равна 3, после балансировки данных я не получу больше места, что меня не беспокоит в первую очередь.
Получу ли я больше вычислительной мощности?
Я не понимаю, как задачи map / reduce работают против репликации. Как определяется, какие узлы получают работу от разных реплик.
Вам нужно будет перейти к настройке кластера из настройки псевдокластера, и, сделав это, вы действительно получите большую процессивность из своего кластера, добавив больше узлов, то есть вы сможете обрабатывать больше карт и сокращать задачи. Увеличение процессивности, как и следовало ожидать, является линейным.
Репликация определит количество реплик, присутствующих в вашем кластере для каждого блока HDFS. Итак, предположим, что у вас есть файл, разделенный на 6 блоков, при репликации 3 в вашем кластере будет распределено 18 блоков. Чем больше у вас узлов, тем выше покрытие, которое вы получите, и, таким образом, когда дело доходит до начала этапа карты, меньше данных необходимо будет передавать между узлами данных. И чтобы ответить на ваш последний вопрос, Hadoop всегда будет пытаться назначать задачи карты узлам, которые служат в качестве узлов данных для ввода этих задач карты. Таким образом, в этом случае репликации упростят эту задачу, так как будет более широкий пул средств отслеживания задач на выбор.
Ваш вопрос немного сбивает с толку. Если вы работаете в псевдораспределенном режиме, тогда все четыре процесса (JobTracker, NameNode, DataNode, TaskTracker) запускаются в одной и той же (обычно разрабатываемой) системе.
В конфигурации Hadoop xxx-site.xml для псевдораспределения все работает с localhost, поэтому добавление новых узлов не сработает.
Оставляя это в стороне, если вы добавляете больше узлов, и на них работают как DataNodes, так и TaskTrackers, вы получите дополнительное хранилище и емкость ЦП.
Обратите внимание: когда вы заполняете HDFS, в конечном итоге трехкратная репликация станет невозможной, когда все меньшие узлы будут загружены, поэтому вы начнете получать предупреждения / ошибки.