Хотя я часто использую Hadoop на своей машине Ubuntu, я никогда не думал о файлах SUCCESS
и part-r-00000
. Выход всегда находится в файле part-r-00000
, но что такое использование файла SUCCESS
? Почему выходной файл имеет имя part-r-0000
? Есть ли какое-либо значение/любая номенклатура или это просто случайное определение?
Что такое файлы SUCCESS и part-r-00000 в hadoop
Ответ 1
См. http://www.cloudera.com/blog/2010/08/what%E2%80%99s-new-in-apache-hadoop-0-21/
При успешном завершении задания среда выполнения MapReduce создает файл _SUCCESS в выходном каталоге. Это может быть полезно для приложений, которым необходимо проверить, завершен ли набор результатов, просто просмотрев HDFS. (MapReduce-947)
Это обычно используется системами планирования заданий (например, OOZIE), чтобы обозначить, что последующая обработка содержимого этого каталога может начинаться с вывода всех данных.
Обновить (в ответ на комментарий)
Выходные файлы по умолчанию называются part-x-yyyyy, где:
-
x
- это либо "m", либо "r", в зависимости от того, было ли задание заданием только для карты или уменьшено -
yyyyy
- номер задачи транслятора или редуктора (на основе нуля)
Таким образом, работа с 32 редукторами будет иметь файлы с именем part-r-00000 для part-r-00031, по одному для каждой задачи редуктора.