Я установил кластер Had oop с 4 узлами, один из которых служит узлом NameNode для HDFS, а также мастером Yarn. Этот узел также является самым мощным.
Теперь я распространил 2 текстовых файла, один на node01 (namenode) и один на node03 (datanode). При выполнении задания basi c WordCount MapReduce я вижу в журналах, что только node01 выполнял какие-либо вычисления.
Мой вопрос заключается в том, почему oop не решил выполнить MapReduce на node03 и перенести результат вместо переноса всей книги на node01. Я также проверил, дублирование отключено, и книга доступна только на узле 03.
Итак, как же oop решал между передачей данных и настройкой заданий, и в этом решении проверяет, какой компьютер имеет большую вычислительную мощность (например, он решил перенести на node01, потому что node01 - это 4-ядерный 4-гигабайтный оперативный компьютер против 2core 1 гигабайта на node03)?
Я не смог ничего найти в этой топи c, поэтому Любое руководство будет оценено.
Спасибо!
Еще несколько уточнений: узел 01 запускает NameNode, а также DataNode и ResourceManager, а также NodeManager. Таким образом, он служит «главным узлом», а также «вычислительным узлом».
Я удостоверился, что поместил один файл на node01 и один файл на node03, выполнив: hdfs dfs -put sample1.txt samples
на node01 и hdfs dfs -put sample02.txt samples
на узле 03. Поскольку репликация отключена, это приводит к тому, что данные - которые были доступны локально на узле 01, соответствующем узлу03 - только сохраняются там.
Я проверил это с помощью веб-интерфейса HDFS. Для sample1.txt он говорит, что блоки доступны только на node01; для sample2.txt говорится, что блоки доступны только на node03.
Относительно @ cricket_007: меня беспокоит то, что sample2.txt доступен только на node03. Веб-интерфейс YARN сообщает, что для попытки приложения на узле 01 был выделен только один контейнер. Если задача сопоставления для файла sample2.txt, на узле 03 также будет контейнер.
Таким образом, для узла 01 необходимо получить файл sample2.txt из узла03.
Да, Я знаю, что oop не работает хорошо на 1 гигабайте ОЗУ, но я работаю с кластером Raspberry Pi, просто чтобы поиграть и немного поучиться. Это не для производственного использования.