InputFormat
には、Map-Reduceジョブの入力仕様が記述されています。
- 検証ジョブの入力仕様: 地図-削減の枠組みは、仕事へののInputFormatに依存しています。
- 入力ファイルを論理
InputSplits
に分割し、それぞれを個別のMapperに割り当てます。
- Mapperによる処理のために論理
InputSplit
から入力レコードを収集するために使用されるRecordReader
実装を提供します。
InputSplit
は、個人によって処理されるデータを表す。Mapper
。
分割の仕組みを理解するにはFileInputFormatコードをご覧ください。
API:
public List<InputSplit> getSplits(JobContext job
) throws IOException {
RecordReaderがマッパーへの入力のためのキー/値のペアにデータを分割します。
RecordReader
タイプが複数あります。
CombineFileRecordReader, CombineFileRecordReaderWrapper, ComposableRecordReader,
DBRecordReader, KeyValueLineRecordReader, SequenceFileAsTextRecordReader,
SequenceFileRecordReader
が最も頻繁に1を使用:KeyValueLineRecordReader
は、読み取りの内部でより良く理解するための関連SEの質問を見てください: How does Hadoop process records split across block boundaries?
私はRecordReader.javaとInputSplit.javaを確認していないし、何があります何らかのヒントを示すコードの一部ですが、ファイルの最後まで読み込むループです。 – IFH
RecordReader.javaとInputSplit.javaの両方がインタフェースであるため、これらのインタフェースを実装するクラスのTextInputFormatなどの入力フォーマットの実装をチェックする必要があります。 – donut