빅데이터 하둡 프로그래밍 교육과정] 전체 정렬(Total Sort)
빅데이터 하둡 프로그래밍 교육과정] 전체 정렬(Total Sort)
실무개발자를위한 실무교육 전문교육센터학원
www.oraclejava.co.kr에 오시면 보다 다양한 강좌를 보실 수 있습니다.
전체 정렬(Total Sort)
- 하나의 파티션만 사용해서 쉽게 해결 가능
: 모든 맵리듀스 잡은 입력데이터의 키를 기준으로 정렬하므로 단일 파티션에 모든 데이터가 정렬되어 출력 됨
: 데이터가 클 때 하나의 파티션만 사용해서 정렬하면 리듀스 태스크가 실행되는 데이터노드만 부하가 집중 될 것임
- 전체 정렬 (분산 처리의 장점을 살리는 방법)
: 입력 데이터를 샘플링해서 데이터의 분포도를 조사
: 데이터의 분포도에 맞게 파티션 정보를 미리 생성
: 미리 생성한 파티션 정보에 맞게 출력 데이터를 생성
: 각 출력 데이터를 병합
- org.apache.hadoop.mapred.lib.TotalOrderPartitioner, InputSampler 제공
: TotalOrderPartitioner로 파티션 개수와 파티션에 저장할 데이터 범위 설정 가능
: InputSampler로 파티션에 키를 고르게 배분, 입력 데이터에서 특정 개수의 데이터를 추출해서 키와 데이터 건수를 샘플링 함 (즉, 데이터의 분포도를 작성)
: TotalOrderPartitioner는 이러한 샘플링 결과를 기준으로 파티션 생성
: 맵리듀스 잡은 생성된 파티션에 출력 데이터를 생성
'빅데이터 > 빅데이터Hadoop' 카테고리의 다른 글
빅데이터 하둡 프로그래밍 교육과정] Hadoop 성능 (0) | 2018.03.04 |
---|---|
빅데이터 하둡 프로그래밍 교육과정] Hadoop성능과 생산성 (0) | 2018.03.04 |
빅데이터 하둡 프로그래밍 교육과정] 부분 정렬(Partial Sort) (0) | 2018.03.04 |
빅데이터 하둡 프로그래밍 교육과정] 보조 정렬(Secondary Sort) (0) | 2018.03.04 |
빅데이터 하둡 프로그래밍 교육과정] 체인 (0) | 2018.03.04 |