Ich habe versucht, Hadoop zu verwenden, um N Zeilen an ein einzelnes Mapping zu senden. Es ist nicht erforderlich, dass die Zeilen bereits aufgeteilt sind.
Ich habe versucht, NLineInputFormat zu verwenden, aber das sendet N Zeilen Text aus den Daten zu jedem Mapper eine Zeile zu einer Zeit [aufgeben nach der N-ten Zeile].
Ich habe versucht, die Option einzustellen, und es werden nur N Zeilen an Eingaben angenommen, die jeweils um 1 Zeile an jede Karte gesendet werden:
job.setInt("mapred.line.input.format.linespermap", 10);
Ich habe eine Mailingliste gefunden, die mir empfiehlt, LineRecordReader::next zu überschreiben, aber das ist nicht so einfach, da die internen Datenelemente alle privat sind.
Ich habe gerade die Quelle für NLineInputFormat überprüft und es hart codiert LineReader, so überschreiben wird nicht helfen.
Außerdem verwende ich Hadoop 0.18 für die Kompatibilität mit dem Amazon EC2 MapReduce.