빅데이터 하둡 프로그래밍 교육과정] 전체 정렬(Total Sort)

 

빅데이터 하둡 프로그래밍 교육과정] 전체 정렬(Total Sort)

 

 

실무개발자를위한 실무교육 전문교육센터학원
www.oraclejava.co.kr에 오시면 보다 다양한 강좌를 보실 수 있습니다.

전체 정렬(Total Sort)

 - 하나의 파티션만 사용해서 쉽게 해결 가능
   : 모든 맵리듀스 잡은 입력데이터의 키를 기준으로 정렬하므로 단일 파티션에 모든 데이터가 정렬되어 출력  됨
   : 데이터가 클 때 하나의 파티션만 사용해서 정렬하면 리듀스 태스크가 실행되는 데이터노드만 부하가 집중  될 것임

 - 전체 정렬 (분산 처리의 장점을 살리는 방법)
   : 입력 데이터를 샘플링해서 데이터의 분포도를 조사
   : 데이터의 분포도에 맞게 파티션 정보를 미리 생성
   : 미리 생성한 파티션 정보에 맞게 출력 데이터를 생성
   : 각 출력 데이터를 병합

 - org.apache.hadoop.mapred.lib.TotalOrderPartitioner, InputSampler 제공
   : TotalOrderPartitioner로 파티션 개수와 파티션에 저장할 데이터 범위 설정 가능
   : InputSampler로 파티션에 키를 고르게 배분, 입력 데이터에서 특정 개수의 데이터를 추출해서 키와 데이터  건수를 샘플링 함 (즉, 데이터의 분포도를 작성)
   : TotalOrderPartitioner는 이러한 샘플링 결과를 기준으로 파티션 생성
   : 맵리듀스 잡은 생성된 파티션에 출력 데이터를 생성 

 

+ Recent posts