количество выходных записей карты меньше, чем объединенные входные записи в hadoop - PullRequest
2 голосов
/ 22 февраля 2012

Когда я запускаю mapreduce, я получаю объединенные входные записи больше, чем выходные записи карты? Это действительно странно. Я не мог понять, что именно происходит? Насколько я знаю, выходные данные карты должны быть точно такими же, как и входные записи объединения. Может ли кто-нибудь, пожалуйста, помогите мне разобраться в проблеме. Заранее спасибо.

Вот пример реальной работы:

    Map-Reduce Framework
      Map input records=112705844
      Map output records=64841776
      Combine input records=64842079
      Combine output records=409
      Reduce input records=106
      Reduce output records=4

1 Ответ

1 голос
/ 25 мая 2012

Очевидно, что поведение комбайнеров изменилось с Hadoop 0.18 и выше.Раньше комбинер вызывался ровно один раз за задачу карты.Теперь его можно вызывать 0 и более раз как на карте, так и на стороне уменьшения.Это говорит о том, что количество записей входных / выходных данных комбинатора не обязательно должно точно соответствовать карте / сокращать количество входных / выходных данных.

...