我注意到我经常在相同的(大量)数据上运行相同的映射作业,并且更改了reducer的行为。是否有可能以某种无缝的方式将mapper输出存储在HDFS上,以便reducer可以读取它?我该如何创建一个读取key-listofvalue对的reducer作业呢?
要定义只有reducer的作业,你需要定义身份映射器,如下所述:job.setMapperClass (Mapper.class)
对于使用Mapper一次性数据的问题,您可以先运行一个Map only job,通过指定:job.setNumReducer (0)并且,在得到它的输出后,使用该作业的输出目录作为仅限Reducer作业的输入目录。
注:上面提到的方法名称可能与API中的方法名称不同,因为我目前没有API。