Я запускаю задание Hadoop в кластере, который разделяют некоторые из наших приложений. У нас около 40 узлов и 4 слота/узла карты. Всякий раз, когда моя работа (которая не что иное, как mapper) работает, она занимает все 160 слотов и блокирует выполнение других заданий. Я попытался установить свойство из задания «mapred.tasktracker.map.tasks.maximum = 1», а также «mapred.map.tasks» до 30 (чтобы ограничить его только 30 узлами) из кода задачи.Установка количества задач/узла hadoop
conf.setInt ("mapred.tasktracker.map.tasks.maximum", 1);
conf.setInt ("mapred.map.tasks", 30);
conf.setBoolean ("mapred.map.tasks.speculative.execution", false);
У меня 2 вопроса:
а. Когда задание выполняется, job.xml отражает «mapred.tasktracker.map.tasks.maximum = 1», но задание по-прежнему заканчивается тем, что занимает 160 слотов.
b. Mapred.map.tasks в job.xml не 30. Это по-прежнему большое число (например, 800).
Любая помощь будет оценена по достоинству.