当某些键集具有太多值时如何平衡化简器



由于数据不是那么平衡,当按键(must)聚类时,一些键集的数据太多,有些键集的数据很少。在这种情况下,我该如何平衡?我已经研究了输入采样器,它会起作用吗?

您可以实现自定义哈希分区程序,以便可以将频率更高的密钥发送到一个化简器,将频率较低的所有其他键发送到其他化简器。

public static class AgePartitioner extends Partitioner<Text, Text> {
        @Override
        public int getPartition(Text key, Text value, int numReduceTasks) {


            //we have more keys in this range so we want to sent them to one reducer
            if(key >20 && key <=30){
                return 1 ;
            }
           else
                return 0;
        }
    }

相关内容

  • 没有找到相关文章

最新更新