相同的关键不同减速机(HADOOP)?

Div*_*dra 5 java reduce hadoop mapreduce key-value

是否可以在不同的Reducer上处理具有相同键的值?从所有地图制作者我得到相同的数据的数据,我想用不同的reducer处理它?我的困惑在于,这本书说所有带有相同键的值都会转到相同的减速器......

 mapper1(k1,v1),mapper2(k1,v2),mapper3(k1,v3) and so on...
Run Code Online (Sandbox Code Playgroud)

我不希望所有数据都相同的减速器......应该是这样的,

 reducer1(k1,v1),reducer2(k1,v2)....
Run Code Online (Sandbox Code Playgroud)

并且让我们说reducer1产生sum1和reducer2产生sum2而我想要那个

 sum=sum2+sum1
Run Code Online (Sandbox Code Playgroud)

我该怎么做?

Joe*_*e K 5

具有相同密钥的数据将始终进入相同的reducer。但是您可以选择所需的任何键,因此,如果希望它们转到不同的异径管,则只需选择不同的键即可。

如果要基于化简器的输出进行其他组合,则必须执行另一个MapReduce作业,并将第一个作业的输出作为下一个作业的输入。这很快就会变得丑陋,因此您可能希望查看CascadingPigHive来简化事情。