Задание MapReduce зависает после выполнения 1 из 5 редукторов в среде с одним узлом
У меня есть только один узел данных в моей среде разработки на EC2. Я выполнял тяжелую работу MR и через 6 часов заметил, что 100% картографов и 20% редукторов закончили (1 из редукторов показывает 100% конкуренции, другие - 0%). Похоже, работа подвешена между двумя прогонами редуктора. Я не вижу ошибок в лог-файлах.
Что это может быть?
PS Последние логи успешно доработанного редуктора:
2012-11-09 11:29:21,576 INFO org.apache.hadoop.mapred.Task: Task:attempt_201211090523_0004_r_000000_0 is done. And is in the process of commiting
2012-11-09 11:29:22,692 INFO org.apache.hadoop.mapred.Task: Task attempt_201211090523_0004_r_000000_0 is allowed to commit now
2012-11-09 11:29:22,719 INFO org.apache.hadoop.mapreduce.lib.output.FileOutputCommitter: Saved output of task 'attempt_201211090523_0004_r_000000_0' to /data/output/1352457275873/20121109-053433-common
2012-11-09 11:29:22,721 INFO org.apache.hadoop.mapred.Task: Task 'attempt_201211090523_0004_r_000000_0' done.
2012-11-09 11:29:22,725 INFO org.apache.hadoop.mapred.TaskLogsTruncater: Initializing logs' truncater with mapRetainSize=-1 and reduceRetainSize=-1
1 ответ
Решение
Журнал JobTracker содержит следующее предупреждающее сообщение:
2012-11-10 00:00:01,911 WARN org.apache.hadoop.mapred.JobInProgress: No room for reduce task. Node tracker_p-10-0-0-148.liveperson.com:localhost.localdomain/127.0.0.1:35533 has 71983820800 bytes free; but we expect reduce input to take 98282873836
Недостаточно места на диске для выполнения задания. Решено после увеличения свободного места.