Как выбрать верхние строки в hadoop?

Я читаю файл Hadoop размером 138 МБ и пытаюсь присвоить порядковые номера каждой записи. Ниже приведен подход, которому я следовал.

Я прочитал весь файл, используя каскадирование, назначенный номер текущей секции и счетчик текущей записи для каждой записи. Предполагалось, что это будет выполняться параллельно для каждого блока и назначать уникальные порядковые номера и номер среза в зависимости от того, какой блок был в нем, т.е. block0 файла должен переходить на номер преобразователя 0, а номер среза будет равен "0", а для преобразователя block1 № 1 назначил бы номер среза как "1" (срез в каскадном режиме совпадает с входным разделением в MapReduce). Также ожидается, что записи с номером среза '0' должны быть значительно больше, чем записи с номером среза '1', так как блок 0 будет 128 МБ, а блок 1 будет 10 МБ.

Но когда я вижу выходные данные, я вижу, что оба набора имеют почти одинаковое количество входных записей записей, то есть записи равномерно распределяются среди 2 картографов.

Я также вижу, что первая запись файла была прочитана mapper1 вместо mapper0.

Не могли бы вы помочь мне понять, почему записи распределяются равномерно между картографами?

0 ответов

Другие вопросы по тегам