InputFormat 会在 map 操作之前对数据进行两方面的预处理。
1.是 getSplits,返回的是 InputSplit 数组,对数据进行 Split 分片,每片交给 map 操作一次。
2.是 getRecordReader,返回的是 RecordReader 对象,对每个 Split 分片进行转换为 keyvalue 键值对格式传递给 map 常用的 InputFormat 是 TextInputFormat ,使用的是LineRecordReader 对每个分片进行键值对的转换,以行偏移量作为键,行内容作为值。自定义类继承 InputFormat 接口,重写 createRecordReader 和 isSplitable 方法在
createRecordReader 中可以自定义分隔符。
hadoop 的 TextInputFormat 作用是什么,如何自定义实现
最新推荐文章于 2021-04-12 22:54:04 发布