이미지 검색을 사용해 보세요
검색창 이전화면 이전화면
최근 검색어
인기 검색어

소득공제
빅 데이터 시대의 하둡 완벽 입문
오픈 소스 분산 처리 환경 구축 가이드 2판
베스트
IT 모바일 top100 4주
가격
36,000
10 32,400
YES포인트?
1,800원 (5%)
5만원 이상 구매 시 2천원 추가 적립
결제혜택
카드/간편결제 혜택을 확인하세요

이미 소장하고 있다면 판매해 보세요.

  •  해외배송 가능?
  •  문화비소득공제 가능

이 분야의 이벤트

제이펍-I♥Cloud

책소개

목차

PART 1 Hadoop 기초
Chapter 1 Hadoop 기초 지식
11 Hadoop이란?
12 Hadoop 개요
13 Hadoop 적용 분야
14 Hadoop 시스템 구성과 아키텍처
15 Hadoop 적용 사례

Chapter 2 MapReduce 애플리케이션 활용 예
21 블로그 접속 수 집계
22 비슷한 사람을 찾아내자
23 검색 엔진 인덱스 작성
24 이미지 데이터 분산 처리
25 MapReduce로 구현할 수 있는 처리 특성과 활용 포인트

Chapter 3 Hadoop 도입
31 구축 환경 조건
32 실행 환경 구축
33 동작 확인
34 샘플 애플리케이션 실행

Chapter 4 HDFS
41 Hadoop의 파일 시스템
42 HDFS의 구조
43 HDFS의 파일 I/O 흐름
44 파일 시스템의 메타데이터
45 HDFS 설정과 시작/중지
46 SecondaryNameNode
47 CLI 기반 파일 조작

Chapter 5 MapReduce 프레임워크
51 MapReduce 처리
52 MapReduce 아키텍처
53 MapReduce와 HDFS의 관계
54 MapReduce 프레임워크 설정
55 MapReduce 프레임워크 시작과 정지
56 CLI 기반 MapReduce 관리

Chapter 6 Hadoop 애플리케이션 실행
61 테스트 애플리케이션
62 MapReduce 애플리케이션(자바)
63 HadoopStreaming 애플리케이션
64 Pig 애플리케이션
65 Hive 애플리케이션

Chapter 7 Hadoop 클러스터 구축
71 완전 분산 클러스터
72 환경 구축의 전제 조건
73 Hadoop 클러스터 환경 구축
74 웹 인터페이스를 통한 동작 확인
75 샘플 애플리케이션 실행

PART 2 MapReduce 애플리케이션 개발
Chapter 8 MapReduce 프로그래밍 기초 - 자바를 사용한 개발(1) -
81 자바를 사용한 MapReduce 개발
82 소스 코드 단계에서 프로그램 실행
83 Mapper
84 Reducer
85 Writable
86 InputFormat/OutputFormat
87 main 프로그램

Chapter 9 MapReduce 프로그래밍 응용 - 자바를 사용한 개발(2) -
91 MapReduce 프로그램 커스터마이즈
92 입력 데이터 조작을 제어한다
93 출력 데이터 제어
94 독자 데이터형을 정의한다
95 Shuffle 단계 동작 제어
96 MapReduce 애플리케이션 테스트 및 디버깅

Chapter 10 MapReduce 개발 팁 -자바를 사용한 개발(3) -
101 이 장에서 소개할 내용
102 압축 데이터 다루기
103 MapReduce 처리에 적합한 파일 포맷
104 한 번에 복수의 파일 포맷 처리
105 분산 캐시 이용
106 Map 태스크/Reduce 태스크 실행 Context 처리
107 처리 중에 발생한 이벤트를 집계
108 MapReduce 애플리케이션 설정을 제어

Chapter 11 HadoopStreaming
111 HadoopStreaming이란·
112 HadoopStreaming 애플리케이션 구성
113 HadoopStreaming 활용 예
114 HadoopStreaming 명령어 옵션

Chapter 12 데이터 흐름형 처리 언어 Pig
121 Pig란·
122 Pig 실행 방법
123 Pig의 데이터 관리
124 Pig에서의 처리 방법
125 함수
126 애플리케이션 개발
127 Pig Latin 처리 구현
128 사용자 정의 함수 구현
129 Pig 디버그
1210 Pig를 활용하기 위한 포인트

Chapter 13 SQL 유사 인터페이스 Hive
131 Hive 개요
132 Hadoop과 Hive
133 HiveQL
134 효율적인 Hive 활용법

PART 3 Hadoop 클러스터 구축과 운영
Chapter 14 환경 구축 효율화
141 환경 구축과 설정 자동화
142 환경 구축 서버 설치
143 OS 자동 설치
144 Puppet을 사용한 환경 설정
145 PSSH를 이용한 운영
146 Hadoop 설정의 베스트 환경

Chapter 15 가용성 향상
151 고가용성의 기본
152 HDFS 고가용성
153 MapReduce 고가용화

Chapter 16 클러스터 모니터링
161 Hadoop 모니터링
162 Ganglia를 통한 Hadoop 클러스터 메트릭스 취득
163 Hadoop 클러스터 감시

Chapter 17 클러스터 운영
171 Hadoop 운영이란·
172 운영 시 구체적인 작업
173 정기적으로 실시해야 할 작업
174 Hadoop 클러스터 확장
175 클러스터 장애 대응

Chapter 18 복수 사용자에 의한 리소스 제어
181 리소스 제어 도입
182 기본 설정
183 스케줄러를 사용한 리소스 분배 제어

PART 4 Hadoop 활용 기술
Chapter 19 Hadoop 튜닝
191 튜닝이 필요한 케이스
192 MapReduce 잡 동작에 영향을 주는 설정
193 Map 태스크 튜닝
194 Reduce 태스크 튜닝
195 자바 VM 튜닝
196 OS 튜닝

Chapter 20 분산형 데이터베이스 HBase
201 HBase란·
202 HBase 데이터 모델
203 아키텍처
204 설치 방법
205 HBase Shell
206 MapReduce 잡 활용
207 HBase 테이블 설계

Chapter 21 Fluentd 로그 수집기
211 로그 수집기 등장 배경
212 Fluentd란·
213 모든 로그를 JSON으로
214 Fluentd 설치
215 Fluentd 기본
216 HDFS에 기록하기 위한 설정 예
217 Fluentd 내부 구조
218 Fluentd HA 구성
219 Fluentd 튜닝
2110 Fluentd 모니터링
2111 Fluentd와 유사한 소프트웨어

Chapter 22 YARN
221 YARN 기초 지식
222 YARN 아키텍처
223 Hadoop/MapReduce/YARN과 기존 Hadoop/MapReduce의 차이
224 YARN을 이용한 MapReduce 실행

찾아보기

저자 소개

저 자 소 개
오오타 카스기
2008년에 동경대학 이학부 정보공학과를 졸업하였고, 2010년에 동대학 정보공학연구소 컴퓨터과학 석사를 수료하였다. 대규모 데이터 처리를 위한 분산 시스템 등에 흥미를 가지고 있으며, 현재는 rTeasure Data, Inc.에서 최고기술책임자로 재직 중이다.

이와사키 마사타케
주식회사 NTT의 데이터 기반 시스템 사업본부에서 근무하고 있다. Hadoop을 시작으로 OSS와 관련된 다양한 기술을 담당한다. 빵이 없으면 밥을 먹으면 된다고 주장하고 있으며, 면 종류를 좋아한다.

사루타 코우스케
주식회사 NTT의 데이터 기반 시스템 사업본부에서 근무하고 있다. 입사 이후 Hadoop을 시작으로 OSS 도입 기술과 기술 검증 및 개발을 담당하였다. 지금까지 수백 대 규모의 Hadoop 클러스터를 구축하였고, 애플리케이션 설계 지원도 실시하였다. 프로그래밍, OS, 네트워크, DB 등에도 흥미가 있어서 자기계발을 위해 다양한 책을 구입하는 편이나, 책을 읽는 속도보다 책이 늘어나는 속도가 빠른 것이 걱정이다. 단것이 삶의 원동력이라 믿고 있으며, ‘이론보다 일단 실행이 우선’을 인생 좌우명으로 삼고 있다.

시모가키 토오루
주식회사 NTT의 데이터 기반 시스템 사업본부에서 주임으로 근무하고 있으며, PostgreSQL을 중심으로 한 오픈 소스 DBMS에 몰두하고 있다. 오라클 데이터 베이스를 PostgreSQL로 변환하는 프로젝트를 담당하며, 상용 시스템 이행 작업을 구현해 왔다. 최근 대규모 데이터 처리에 대한 필요가 늘어나면서 Hadoop을 도입하기 시작, DBMS와 Hadoop 양쪽의 특성을 활용한 효율적인 시스템 구축에 주력하고 있는 중이다.

후지이 타츠로우
약 2년이 지나 직함에서 인턴을 떼고 정식 엔지니어가 되었고, 다지 2년이 지나서야 집에다 전기밥솥을 들일 수 있었다. ‘빵도 밥도 없으면 안 먹으면 되지.’라는 생활에서 간신히 탈출한 상태다. 참고로, 면 종류(특히 라면)를 몹시 좋아하는 또 한 사람이다.

야마시타 신이치
주식회사 NTT의 데이터 기반 시스템 사업본부에서 주임으로 근무하고 있으며, 오픈 소스 소프트웨어에 관련된 미들웨어A(pache/Tomcat/PostgreSQL) 평가나 검증, 기술 개발 및 지원을 담당하고 있다. 최근에는 Hadoop을 중심으로 한 에코(ECO) 시스템 도입 업무에 참여 중이다. 개인적으로는 새로운 기술이 나오면 소스 코드부터 건드려 본다거나, 수많은 데이터와 정보를 사용해서 개인의 특성을 추출하여 무언가 재미있는 것을 고안하려고 사투를 벌이곤 한다.
역자 : 김완섭
대학에서 지리정보 공학을 전공했으며, 일본에서 시스템 엔니지어로 5년간 근무했다. 일본 보험시스템 개발 담당을 시작으로, 일본 대기업 세콤(SECOM) 계열사인 파스코(PASCO)에서 일본 외무성, 일본 국토지리정보원 등 일본 정부기관을 대상으로 한 시스템 통합(SI) 업무를 담당했다.
이후 야후 재팬(Yahoo Japan)으로 직장을 옮겨 야후 맵Y(ahoo Map) 개발 담당 시니어 엔지니어로 근무하다가 2010년 귀국하여 SK에서 내비게이션 데이터 담당 매니저로 일했다. 지금은 또 다른 꿈을 찾아서 네덜란드에서 공부 중에 있다. 역서로는 《코딩을 지탱하는 기술》 《따라하며 배우는 서버 부하분산 입문》이 있다.(역자 소개는 한 문단으로 이었습니다)

품목정보

발행일
2014년 06월 18일
쪽수, 무게, 크기
640쪽 | 1281g | 188*245*30mm
ISBN13
9788994506968

책 속으로

그래서 이번 《빅 데이터 시대의 하둡 완벽 입문(제2판)》을 출판하면서 Hadoop을 전혀 모르는 사람들이 이해하는 데 좀 더 도움이 될 수 있도록 1장과 2장 내용을 보강하여 Hadoop에 대한 개요 부분을 좀 더 쉽게 구성했다. 또한, MapReduce 애플리케이션 개발 내용을 추가하여 초보자부터 고급 사용자까지 활용할 수 있도록 했다. 이 책의 특색인 운용성과 가용성 측면도 1판에 비해 보강했으며, 새로운 기술 이슈에 대해서도 추가하였다. _XIV

따라서 대용량 데이터를 효율적으로 읽어 들이기 위해서는 복수의 디스크에 데이터를 기록해 두고 각 디스크에서 병행하여 읽을 수밖에 없다. 예를 들어, 한 대의 SATA 디스크라면 70MB/초 처리량밖에 안 되지만, 40대로 동시에 읽어 들이면 2,800MB/초 처리량을 구현할 수 있다. 1TB 데이터도 약 350초면 된다. 만약 1,000대의 디스크를 사용한다면 14초 만에 읽을 수가 있다. _12p

HDFS는 여러 대의 노드로 구성된다. 수백 대 규모가 되면 노드의 고장은 특별한 문제가 아닌 일상적으로 발생할 수 있는 문제가 된다. 예를 들어, 노드 한 대가 고장 날 확률이 1,000일에 1회라고 하면 HDFS 구성 노드 수가 1,000일 경우, 매일 한 대의 서버가 고장 나게 된다. 특정 데이터를 특정 노드에만 저장해 두면 해당 노드의 고장으로 데이터를 잃어버릴 수 있지만, HDFS에서는 복수의 노드를 사용해 데이터 복제를 유지하기 때문에 손실을 방지할 수 있다. _68p

Hadoop은 자바 이외의 언어로 MapReduce 애플리케이션을 작성할 수 있도록 프로그램 인터페이스를 제공하고 있다. 이 인터페이스가 HadoopStreaming이다. Hadoop Streaming을 사용해서 애플리케이션을 작성한 경우도 map 함수/reduce 함수 처리를 작성해 주어야 한다. 그러나 HadoopStreaming에서는 Map 처리/Reduce 처리를 위한 데이터 입출력을 위해 표준 입출력을 사용한다는 것이 큰 차이다. 이것은 표준 입출력을 사용할 수 있다면, 어떤 프로그램 언어든 MapReduce 애플리케이션을 만들 수 있다는 것을 의미한다. 앞서 말한 것과 같이 HadoopStreaming을 사용하는 경우도 Map 처리/Reduce 처리가 필요하다. 단, Map 처리/Reduce 처리는 다음 조건을 고려한 후 작성해야 한다. _150p

MapReduce 애플리케이션 설계에 있어서 중요한 것은 ‘MapReduce 사양’을 따르는 것이다. MapReduce는 병렬 분산 처리를 위한 프레임워크로, 슬레이브 노드 상에서 실행되는 각 Map 태스크나 Reduce 태스크가 상호 통신 없이 독립된 처리를 한다. 그리고 이를 통해 확장성과 안정성을 확보하고 있다. 그러나 범용 언어인 자바로 프로그램을 기술하면 다음과 같은 처리도 간단히 만들 수 있다. _236p

Hive는 HiveQL이라 불리는 SQL 유사 언어를 이용해서 MapReduce를 실행하는 것이다. SQL을 익힌 엔지니어가 MapReduce를 쉽게 이용할 수 있도록 한 처리 인터페이스로, Apache 프로젝트 중 하나다. 주로 페이스북 멤버를 중심으로 개발이 진행되고 있다. SQL과 비슷하지만, SQL 표준을 따르고 있지는 않아서 ‘SQL 유사’라고 한다. HiveQL이 취급하는 데이터는 논리적 행과 열로 이루어진 테이블 구조로, HDFS 상에 파일로 존재한다. HiveQL로 기술한 처리(쿼리)는 MapReduce 같은 일련의 처리로 변환되어 테이블을 조작한다. _320p

최근에는 Cassandra(또는 NoSQL) 등 다른 분산 데이터베이스가 등장하고 있는데, HBase는 이들과 비교해서 ‘일관성을 중시한다’는 것이 특징이다. 다른 데이터베이스들은 저장한 값이 바로 반영되지 않아 저장 시점보다 앞서 존재하던 예전 데이터가 보일 수도 있다. 하지만 HBase에서는 저장된 데이터에 바로 접근해도 반드시 최신 값이 보인다는 것이 특징이다. HBase는 이미 많은 기업이나 서비스가 사용하고 있으며, 최근에는 페이스북 메시지에서 사용해 화제가 되었다. 이 외에도 웹 브라우저 Mozilla의 충돌 리포트 수집, 미국 스텀블어폰(StumbleUpon)의 단축 URL 서비스 등에서 사용되고 있다. _553p

---p.553

리뷰/한줄평1

리뷰

8.0 리뷰 총점

한줄평

첫번째 한줄평을 남겨주세요.