如何将特定记录发送给我的所有减速器?
我知道 Partitioner 类及其作用,但我没有看到任何简单的方法可以确保记录发送到所有减速器。
基本上,Partitioner 有这个方法:
int getPartition(K2 key,
V2 value,
int numPartitions)
我的第一个想法是让 Partitioner 和 Mapper 协作如下:Mapper 不断输出记录的次数等于 reduce 任务的数量,并且 Partitioner 以这种方式返回所有整数(从 0 到 numPartitions-1)确保记录到达所有分区。
有没有其他更聪明的方法来解决这个问题?例如,我为需要发送到所有分区的记录返回 -1,并且框架在看到返回的 -1 时为我执行此操作。