Class RehashPartitioner<K,V>

java.lang.Object
org.apache.hadoop.mapreduce.Partitioner<K,V>
org.apache.hadoop.mapreduce.lib.partition.RehashPartitioner<K,V>

@Public @Stable public class RehashPartitioner<K,V> extends Partitioner<K,V>
This partitioner rehashes values returned by Object.hashCode() to get smoother distribution between partitions which may improve reduce reduce time in some cases and should harm things in no cases. This partitioner is suggested with Integer and Long keys with simple patterns in their distributions.
Since:
2.0.3
  • Constructor Details

    • RehashPartitioner

      public RehashPartitioner()
  • Method Details

    • getPartition

      public int getPartition(K key, V value, int numReduceTasks)
      Rehash Object.hashCode() to partition.
      Specified by:
      getPartition in class Partitioner<K,V>
      Parameters:
      key - the key to be partioned.
      value - the entry value.
      numReduceTasks - the total number of partitions.
      Returns:
      the partition number for the key.