虽然一个MapReduce作业的输入可能包含多个输入文件(由文件glob.过滤器和路径组成),但所有文件都由同一个InputFormat和同一个Mapper来解释.然而,数据格式往往会随时间而演变,所以必须写自己的mapper来处理应用中的遗留数据格式.或,有些数据源会提供相同的数据,但是格式不同.对不同的数据集进行连接(jion,也称“联接”)操作时,便会产生这样的问题.例如,有些数据可能是作用制表符分隔的文本文件,另一些文件可能是二进制的顺序文件.即使它们格式相同,它们的表示也可能不同,因此…