Hadoop Reducer是否可以读取相同顺序的af映射器输出,而不是将具有值的唯一键分组?
我基本了解Hadoop如何将数据从Mapper排序到Reducer。 我将以下数据写入Hadoop Reducer是否可以读取相同顺序的af映射器输出,而不是将具有值的唯一键分组?,hadoop,mapreduce,Hadoop,Mapreduce,我基本了解Hadoop如何将数据从Mapper排序到Reducer。 我将以下数据写入contextMapper。下面的数据是一个键、值对 abc 1234 cde 2394 dec 8273 abc 2348 cde 8780 dec 6590 键的abc、cde、dec连续n次,值相同或不同。 Reducer使用一组值读入键。即 abc {1234, 2348, ...} and so on with other keys. 问题:是否有可能按照映射器输出的相同顺序将数据读取到reduc
context
Mapper。下面的数据是一个键、值对
abc 1234
cde 2394
dec 8273
abc 2348
cde 8780
dec 6590
键的abc、cde、dec连续n次,值相同或不同。
Reducer使用一组值读入键。即
abc {1234, 2348, ...} and so on with other keys.
问题:是否有可能按照映射器输出的相同顺序将数据读取到reducer中,而不是使用具有值的唯一键组?如果需要根据标题处理数据,我认为您可以使用以下方法:-
Mapper
:-
剪切标题并将其作为键,其余数据作为值。
现在,该特定标头的所有数据都将移动到减速机
减速器
:-
我们将在reducer中使用这些值,而不进行分组
abc 1234
cde 2394
dec 8273
abc 2348
cde 8780
dec 6590
我们可以单独处理数据。
你在中间使用组合器吗?如果没有合路器,您将无法获得abc(12342348)。您的要求是什么?。。。如果需要相同的顺序,您可以跳过使用reducer,只需使用映射器即可place@madhu,你说得对。但是,我的文件在开头包含一些头文件,这些头文件将由映射程序处理。之后的数据与标题相关。我需要根据标题处理数据。读取标题后,为什么不能使用分区器、合并器和分拣器?在Reducer接收输入之前对值进行排序比在Reducer上进行排序更有效