在hadoop中有没有从reducer收集输出的方法?

在hadoop中有没有从reducer收集输出的方法?,hadoop,mapreduce,Hadoop,Mapreduce,是否有方法收集减速机的输出并防止其写入文件?我想在写入文件之前对减少的输出进行排序。不,没有办法。MapReduce作业必须完成将结果写入文件 如果我理解正确,您希望以某种方式对reducer输出进行排序,而不是按传递给reducer的键进行默认排序 为此,您有两种可能的方法: 将映射阶段上的输出键更改为另一个用于存储数据的键 应在减少阶段进行排序 如果第一条路不可能,你可以 对另一个MapReduce作业或不同工具输出的减缩器进行排序。 您可以在主作业之后立即从同一位置开始排序作业 指定主作业

是否有方法收集减速机的输出并防止其写入文件?我想在写入文件之前对减少的输出进行排序。

不,没有办法。MapReduce作业必须完成将结果写入文件

如果我理解正确,您希望以某种方式对reducer输出进行排序,而不是按传递给reducer的键进行默认排序

为此,您有两种可能的方法:

  • 将映射阶段上的输出键更改为另一个用于存储数据的键 应在减少阶段进行排序
  • 如果第一条路不可能,你可以 对另一个MapReduce作业或不同工具输出的减缩器进行排序。 您可以在主作业之后立即从同一位置开始排序作业 指定主作业的输出目录作为输入的驱动程序 用于排序作业的目录

  • 你能提供更多的信息吗?比如,Reduce的输入是什么,reducer的输出是什么,以及你想排序的键或值是什么?@JRR,reducer的输出已经按键排序了。您可能还需要什么排序?