서브메뉴

본문

빅 데이터 시대의 하둡 완벽 입문 (오픈 소스 분산 처리 환경 구축 가이드)
빅 데이터 시대의 하둡 완벽 입문 (오픈 소스 분산 처리 환경 구축 가이드)
저자 : 오오타 카스기|이와사키 마사타케|사루타 코우스케|시모가키 토오루|후지이 타츠로우
출판사 : 제이펍
출판년 : 2014
ISBN : 9788994506968

책소개

Hadoop에 관해 전혀 모르는 사람들도 이해하는 데 좀 더 도움이 되도록 개요 부분을 더욱 쉽게 구성한 『빅 데이터 시대의 하둡 완벽 입문』. MapReduce 애플리케이션 개발 내용을 추가하고 초보자부터 고급 사용자까지 모두 활용할 수 있도록 도와주는 입문서이다. 실제 시스템에서 많이 사용되고 있는 클라우데라(Cloudera)의 CDH 4를 기준으로 시스템 확장, 감시, 운영 방법 등 현장에서 바로 적용할 수 있는 최신 노하우까지 수록하였다.
[교보문고에서 제공한 정보입니다.]

출판사 서평

Hadoop의 다양한 애플리케이션 개발 환경을 상세히 설명하고 구축과 운영에 관한 자세한 정보 수록!
A부터 Z까지 Hadoop에 관한 거의 모든 것!


IT 시스템 세계에서 ‘Hadoop’이라는 소프트웨어 사용이 늘어나고 있다. 이 책을 가지고 있다는 것은 적어도 Hadoop에 관심이 있다는 것이다. 아직 Hadoop에 관해 잘 몰라도 소프트웨어 이름이라는 것 정도는 알고 있겠지만, ‘도대체 용도가 뭐야?’, ‘뭐 하는 거지?’ 등과 같은 초보적인 질문을 하는 사람도 적지 않을 것이다. 또한, 어떤 데이터를 취급하기 위한 미들웨어라는 것은 알고 있더라도 ‘관계형 데이터베이스랑은 어떻게 달라?’, ‘파일시스템이랑 달라?’, ‘처리를 위한 새로운 개념인가?’ 등 다양한 의문이 많을 거라고 생각된다.

Hadoop은 다수의 컴퓨터를 연결하여 대용량 처리를 가능케 하는 오픈 소스 소프트웨어이며, MapReduce라는 자바 프레임워크를 사용해 프로그래밍이 가능하다. 또한, 표준 입출력을 사용할 수 있는 HadoopStreaming, 플로(flow) 기술 환경 Pig, SQL 방식 인터페이스인 Hive 등 다양한 개발 환경을 제공하고 있다. 뿐만 아니라 행 지향 데이터베이스인 HBase나 로그 수집기 Fluentd의 기반 시스템으로도 사용할 수 있어서 높은 범용성을 자랑한다.

이 책은 1판에 비해 Hadoop에 관해 전혀 모르는 사람들도 이해하는 데 좀 더 도움이 되도록 개요 부분을 더욱 쉽게 구성했으며, MapReduce 애플리케이션 개발 내용을 추가하고 초보자부터 고급 사용자까지 모두 활용할 수 있도록 했다. 운용성, 가용성 측면도 보강하고 새로운 기술 이슈에 대해서도 추가하였다. 또한, 실제 시스템에서 많이 사용되고 있는 클라우데라(Cloudera)의 CDH 4를 기준으로 시스템 확장, 감시, 운영 방법 등 현장에서 바로 적용할 수 있는 최신 노하우까지 담았다.
[교보문고에서 제공한 정보입니다.]

목차정보

PART 1 Hadoop 기초 .... 1
Chapter 1 Hadoop 기초 지식 3
1.1 Hadoop이란? 4
1.2 Hadoop 개요 4
1.3 Hadoop 적용 분야 15
1.4 Hadoop 시스템 구성과 아키텍처 19
1.5 Hadoop 적용 사례 30

Chapter 2 MapReduce 애플리케이션 활용 예 35
2.1 블로그 접속 수 집계 36
2.2 비슷한 사람을 찾아내자 41
2.3 검색 엔진 인덱스 작성 43
2.4 이미지 데이터 분산 처리 46
2.5 MapReduce로 구현할 수 있는 처리 특성과 활용 포인트 48

Chapter 3 Hadoop 도입 51
3.1 구축 환경 조건 52
3.2 실행 환경 구축 55
3.3 동작 확인 59
3.4 샘플 애플리케이션 실행 63

Chapter 4 HDFS 65
4.1 Hadoop의 파일 시스템 66
4.2 HDFS의 구조 68
4.3 HDFS의 파일 I/O 흐름 73
4.4 파일 시스템의 메타데이터 77
4.5 HDFS 설정과 시작/중지 81
4.6 SecondaryNameNode 92
4.7 CLI 기반 파일 조작 94

Chapter 5 MapReduce 프레임워크 109
5.1 MapReduce 처리 110
5.2 MapReduce 아키텍처 114
5.3 MapReduce와 HDFS의 관계 118
5.4 MapReduce 프레임워크 설정 123
5.5 MapReduce 프레임워크 시작과 정지 129
5.6 CLI 기반 MapReduce 관리 136

Chapter 6 Hadoop 애플리케이션 실행 143
6.1 테스트 애플리케이션 144
6.2 MapReduce 애플리케이션(자바) 144
6.3 HadoopStreaming 애플리케이션 150
6.4 Pig 애플리케이션 153
6.5 Hive 애플리케이션 160

Chapter 7 Hadoop 클러스터 구축 167
7.1 완전 분산 클러스터 168
7.2 환경 구축의 전제 조건 168
7.3 Hadoop 클러스터 환경 구축 169
7.4 웹 인터페이스를 통한 동작 확인 178
7.5 샘플 애플리케이션 실행 181

PART 2 MapReduce 애플리케이션 개발 .... 185
Chapter 8 MapReduce 프로그래밍 기초 - 자바를 사용한 개발(1) - 187
8.1 자바를 사용한 MapReduce 개발 188
8.2 소스 코드 단계에서 프로그램 실행 190
8.3 Mapper 194
8.4 Reducer 197
8.5 Writable 199
8.6 InputFormat/OutputFormat 203
8.7 main 프로그램 207

Chapter 9 MapReduce 프로그래밍 응용 - 자바를 사용한 개발(2) - 215
9.1 MapReduce 프로그램 커스터마이즈 216
9.2 입력 데이터 조작을 제어한다 216
9.3 출력 데이터 제어 226
9.4 독자 데이터형을 정의한다 229
9.5 Shuffle 단계 동작 제어 231
9.6 MapReduce 애플리케이션 테스트 및 디버깅 235

Chapter 10 MapReduce 개발 팁 -자바를 사용한 개발(3) - 243
10.1 이 장에서 소개할 내용 244
10.2 압축 데이터 다루기 244
10.3 MapReduce 처리에 적합한 파일 포맷 247
10.4 한 번에 복수의 파일 포맷 처리 249
10.5 분산 캐시 이용 252
10.6 Map 태스크/Reduce 태스크 실행 Context 처리 254
10.7 처리 중에 발생한 이벤트를 집계 256
10.8 MapReduce 애플리케이션 설정을 제어 259

Chapter 11 HadoopStreaming 263
11.1 HadoopStreaming이란? 264
11.2 HadoopStreaming 애플리케이션 구성 264
11.3 HadoopStreaming 활용 예 270
11.4 HadoopStreaming 명령어 옵션 275

Chapter 12 데이터 흐름형 처리 언어 Pig 283
12.1 Pig란? 284
12.2 Pig 실행 방법 286
12.3 Pig의 데이터 관리 288
12.4 Pig에서의 처리 방법 290
12.5 함수 298
12.6 애플리케이션 개발 301
12.7 Pig Latin 처리 구현 303
12.8 사용자 정의 함수 구현 306
12.9 Pig 디버그 313
12.10 Pig를 활용하기 위한 포인트 315

Chapter 13 SQL 유사 인터페이스 Hive 319
13.1 Hive 개요 320
13.2 Hadoop과 Hive 321
13.3 HiveQL 324
13.4 효율적인 Hive 활용법 347

PART 3 Hadoop 클러스터 구축과 운영 .... 359
Chapter 14 환경 구축 효율화 361
14.1 환경 구축과 설정 자동화 362
14.2 환경 구축 서버 설치 365
14.3 OS 자동 설치 373
14.4 Puppet을 사용한 환경 설정 377
14.5 PSSH를 이용한 운영 388
14.6 Hadoop 설정의 베스트 환경 392

Chapter 15 가용성 향상 395
15.1 고가용성의 기본 396
15.2 HDFS 고가용성 401
15.3 MapReduce 고가용화 413

Chapter 16 클러스터 모니터링 425
16.1 Hadoop 모니터링 426
16.2 Ganglia를 통한 Hadoop 클러스터 메트릭스 취득 437
16.3 Hadoop 클러스터 감시 445

Chapter 17 클러스터 운영 459
17.1 Hadoop 운영이란? 460
17.2 운영 시 구체적인 작업 462
17.3 정기적으로 실시해야 할 작업 474
17.4 Hadoop 클러스터 확장 479
17.5 클러스터 장애 대응 481

Chapter 18 복수 사용자에 의한 리소스 제어 493
18.1 리소스 제어 도입 494
18.2 기본 설정 495
18.3 스케줄러를 사용한 리소스 분배 제어 500

PART 4 Hadoop 활용 기술 .... 521
Chapter 19 Hadoop 튜닝 523
19.1 튜닝이 필요한 케이스 524
19.2 MapReduce 잡 동작에 영향을 주는 설정 524
19.3 Map 태스크 튜닝 527
19.4 Reduce 태스크 튜닝 532
19.5 자바 VM 튜닝 535
19.6 OS 튜닝 545

Chapter 20 분산형 데이터베이스 HBase 551
20.1 HBase란? 552
20.2 HBase 데이터 모델 554
20.3 아키텍처 555
20.4 설치 방법 558
20.5 HBase Shell 563
20.6 MapReduce 잡 활용 572
20.7 HBase 테이블 설계 578

Chapter 21 Fluentd 로그 수집기 581
21.1 로그 수집기 등장 배경 582
21.2 Fluentd란? 584
21.3 모든 로그를 JSON으로 587
21.4 Fluentd 설치 588
21.5 Fluentd 기본 590
21.6 HDFS에 기록하기 위한 설정 예 593
21.7 Fluentd 내부 구조 595
21.8 Fluentd HA 구성 598
21.9 Fluentd 튜닝 601
21.10 Fluentd 모니터링 602
21.11 Fluentd와 유사한 소프트웨어 604

Chapter 22 YARN 605
22.1 YARN 기초 지식 606
22.2 YARN 아키텍처 611
22.3 Hadoop/MapReduce/YARN과 기존 Hadoop/MapReduce의 차이 613
22.4 YARN을 이용한 MapReduce 실행 615

찾아보기 .... 629
[교보문고에서 제공한 정보입니다.]