빅데이터 하둡 프로그래밍 교육과정 ]개요
빅데이터 하둡 프로그래밍 교육과정 ]개요
실무개발자를위한 실무교육 전문교육센터학원
www.oraclejava.co.kr에 오시면 보다 다양한 강좌를 보실 수 있습니다.
개요
■ 앞서 WordCount2의 실행결과에서 가장 높은 빈도수를 갖는 10개의 단어는?
■ 두 번째 필드가 숫자로 빈도수를 나타낸다는 전제하에 동작 (범용적)
■ 동작방식:
- 각 mapper에서 들어오는 레코드들을 보고 Top N개만 출력.
- Reducer에서 결국 같은 작업을 반복.
- Top N개의 레코드를 가려내기위해 PriorityQueue를 사용.
* 모두를 다 저장하고나서 소팅하는 것은 메모리낭비가 너무 큼.
- 모든 입력레코드의 처리가 끝난 후에야 Top N개를 알 수 있으므로 Mapper와 Reducer의 cleanup 메소드에서 PriorityQueue의 내용을 출력.
■ 만일 전체 데이터를 빈도수로 소팅하고 싶다면 다른 전략이 필요.
- 하둡제공 예제 프로그램중에 TeraSort라는 것의 구현을 흉내내면 됨. 하둡의 벤치마크로 널리 쓰이는 프로그램.
- 데이터 샘플링 후 파티션(Partitioner)을 어떤 값 기준으로 나눌지 정하는 형태. 이는 아주 흔히 쓰이는 하둡 잡 실행 전략 중의 하나.
'빅데이터 > 빅데이터Hadoop' 카테고리의 다른 글
빅데이터 하둡 프로그래밍 교육과정 ]ItemFreq 클래스 (0) | 2017.02.03 |
---|---|
빅데이터 하둡 프로그래밍 교육과정 ]우선순위큐(PriorityQueue) (0) | 2017.02.03 |
빅데이터 하둡 프로그래밍 교육과정 ]카운터 사용 (0) | 2017.02.03 |
빅데이터 하둡 프로그래밍 교육과정 ]Combiner의 동작확인 (0) | 2017.02.03 |
빅데이터 하둡 프로그래밍 교육과정 ]코드 (0) | 2017.02.02 |