mapred-default внутри файла hadoop.jar вступает во владение и устанавливает нежелательные свойства, например mapred.tasktracker.map.tasks.maximum = 2. Затем эти значения передаются с помощью ttask и переопределяют значения в конфигурации кластера: (
Я предполагаю, что вы ссылаетесь на свойства, установленные в файле job.xml. Не должно быть никакого эффекта установки некоторых свойств, таких как mapred.tasktracker.map.tasks.maximum
на стороне клиента, так как свойство mapred.tasktracker.map.tasks.maximum
читается демоном TaskTracker при запуске. Хотя mapred.tasktracker.map.tasks.maximum
указано в job.xml, оно не относится к конкретной работе.
Как вы убедились, что свойства были переопределены? Перейдите на страницу JobTracker (http://jotracker:50030/jobtracker.jsp) и убедитесь, что конкретное свойство было переопределено или нет для TaskTracker.
каков здесь правильный подход? Вы копируете файлы из своего кластера на свой клиентский компьютер?
Просто избегайте путаницы, у меня будут отдельные файлы на клиенте и узлах, и в них будут указаны минимально необходимые свойства конфигурации, и остальные свойства будут иметь значения по умолчанию.
Согласно Hadoop: полное руководство
Имейте в виду, что некоторые свойства не влияют, если они установлены в конфигурации клиента. За
Например, если при подаче работы вы установили mapred.tasktracker.map.tasks.maximum с помощью
ожидание того, что это изменит количество слотов задач для треккеров, выполняющих вашу работу, тогда вы будете разочарованы, так как это свойство только соблюдается
если установлено в файле mapred-site.html на трескере задач. В общем, вы можете сказать компонент
где свойство должно быть установлено по его имени, поэтому тот факт, что mapred.task
tracker.map.tasks.maximum начинается с mapred.tasktracker и дает вам понять, что он может
быть установленным только для демона TaskTracker. Это не жесткое и быстрое правило, поэтому в
В некоторых случаях вам может потребоваться прибегнуть к методам проб и ошибок или даже прочитать источник.