【发布时间】:2012-10-06 06:13:24
【问题描述】:
在我的应用程序中,我想根据键创建尽可能多的 reducer 作业。现在我当前的实现将所有键和值写入单个(reducer)输出文件中。所以为了解决这个问题,我使用了一个分区器,但我不能调用类。分区器应该在选择映射任务之后和选择减少任务之前调用,但它没有。分区器的代码如下
public class MultiWayJoinPartitioner extends Partitioner<Text, Text> {
@Override
public int getPartition(Text key, Text value, int nbPartitions) {
return (key.getFirst().hashCode() & Integer.MAX_VALUE) % nbPartitions;
return 0;
}
}
这段代码是否正确地根据键和值对文件进行分区并且输出会自动传输到reducer??
【问题讨论】:
-
你有没有让这个工作?
标签: hadoop mapreduce hadoop-partitioning