빅데이터 하둡 프로그래밍 교육과정 ]Mapper출력을 어느 Reducer로?




빅데이터 하둡 프로그래밍 교육과정 ]Mapper출력을 어느 Reducer로?

실무개발자를위한 실무교육 전문교육센터학원

www.oraclejava.co.kr에 오시면 보다 다양한 강좌를 보실 수 있습니다.


Mapper출력을 어느 Reducer로?


■ mapper 출력의 키를 바탕으로 어느 reducer로 보낼지 결정

- 이때 사용되는 것이 바로 partitioner! 

- 디폴트로 사용되는 것이 HashPartitioner (단순 나머지 연산!)

- Job 클래스의 setPartitionerClass 메소드로 커스텀 partitioner를 지정가능 



public class HashPartitioner<K, V> extends Partitioner<K, V> {

  public int getPartition(K key, V value, int numReduceTasks) {

    return (key.hashCode() & Integer.MAX_VALUE) % numReduceTasks; 

  }

}



+ Recent posts