일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Clean Code
- elasticsearch
- Linux
- hibernate
- DDD
- 인텔리J
- docker
- Spring XD
- intellij
- 도메인주도설계
- Spring Batch
- Angular2
- Hbase
- SBT
- design pattern
- Java
- 제주
- nginx
- elastic search
- 엘라스틱서치
- Storm
- hdfs
- Spring
- spark
- apache storm
- Gradle
- hadoop
- Spring Boot
- 스프링 배치
- scala
- Today
- Total
목록MapReduce (2)
욱'S 노트
자 이제 MapReduce로 첫번째 프로그램을 만들어보자. 우리의 목표는 공식사이트의 첫번째 예제인 WordCount이다. 무작정 베끼기만 하면 이해가 어려울 수 있으니 목표는 똑같으나 스타일은 내 스타일대로 가겠다. 목표는 Hadoop의 README.txt 파일의 단어 갯수를 세는 프로그램이다. 먼저 MapReduce의 mapper 역할을 하는 클래스를 만들어 보자. 12345678910111213141516171819202122232425262728import java.io.IOException;import java.util.StringTokenizer; import org.apache.hadoop.io.IntWritable;import org.apache.hadoop.io.LongWritable;i..
다음으로 살펴볼 내용은 MapReduce 이다. 이 넘이 아마 분산처리를 주도하는 기술이 아닐까 싶다. 1. 개요 그럼, MapReduce란 무엇인가? MapReduce는 대량의 클러스터에서 대량의 데이터를 병렬로 처리하는 어플리케이션을 쉽게 만들 수 있도록 도와주는 소프트웨어 프레임워크이다. 공식사이트의 정의를 빌어보자면, 아마 이 넘이 병렬 및 대량처리에 핵심인듯 하다. 대충 돌아가는 개요를 보면 아래와 같다. MapReduce 작업은 일반적으로 입력데이터를 map task의 처리에 의해 독립적인 chunk들로 분할을 한다. 프레임워크는 해당 map의 출력의 정렬된 경과를 reduce task의 입력으로 전달한다. 통상적으로 작업의 입력과 출력 모두 파일시스템에 저장되고, 프레임워크는 task의 스케..