콤바이너 클래스 적용.
다음과 같이 콤바이너 클래스를 Driver에 추가만 해주면 조금더 빨리 된다. 콤바이너 클래스는 매퍼의 출력 데이터가 네트워크를 통해 리듀서에 전달되기 전에 매퍼의 출력 데이터의 크기를 줄이는 기능을 수행한다.
입출력 데이터 포맷 설정 전에 다음과 같은 코드를 한줄 추가한다
Job.setCombinerClass(DelayReducer.class) |
컴바이너 클래스를 적용하기 전 걸린 시간은 약 40분이였고, 컴바이너 클래스를 적용한 결과 약 37분으로써, 별로 시간이 그렇게 줄어든것 같지 않다. 다음은 그 결과이다.
GZIP적용
다음과 같이 맵 출력 압축설정을 할수 있다.
SequenceFileOutputFormat.setCompressOutput(job, true); SequenceFileOutputFormat.setOutputCompressorClass(job, GzipCodec.class); SequenceFileOutputFormat.setOutputCompressionType(job, CompressionType.BLOCK); |
34분이 걸렸다. 생각보다 엄청나게 줄어들지는 않는다.
'소프트웨어 개발 > Hadoop Ecosystem' 카테고리의 다른 글
로그인시 비밀번호가 필요없도록 ssh key를 이용하는 방법. (0) | 2017.01.08 |
---|---|
Hadoop 관련 오픈소스 나열 (0) | 2017.01.08 |
Hadoop 2 버전 설치 (0) | 2015.05.31 |
Hive 간단 설치 및 이용법 (0) | 2015.05.31 |
Hadoop 빠르게 설치하고 쉽게 이용하기 (6) | 2015.05.31 |