mapred-site.xml на клиентском компьютере должен быть таким же, как в кластере hadoop? - PullRequest
0 голосов
/ 26 декабря 2011

относится к конфигурации api hadoop на клиентском компьютере .

Если мы попытаемся сохранить mapred-site.xml на клиентском компьютере как можно более минимальным, указав только mapred.job.tracker, то mapred-default изнутри hadoop.jar вступит во владение и поместитнежелательные свойства, например mapred.tasktracker.map.tasks.maximum = 2.Затем эти значения передаются вместе с задачей и переопределяют значения в конфигурации кластера: (

каков здесь правильный подход? Вы реплицируете файлы из своего кластера на свой клиентский компьютер?

1 Ответ

1 голос
/ 26 декабря 2011

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. Это не жесткое и быстрое правило, поэтому в В некоторых случаях вам может потребоваться прибегнуть к методам проб и ошибок или даже прочитать источник.

...