아파치 Flume 따라잡기 [하둡 기반 분산 로그 수집과 스트림 데이터 처리를 위한]
- 원서명Apache Flume: Distributed Log Collection for Hadoop (ISBN 9781784392178)
- 지은이스티브 호프만(Steve Hoffman)
- 옮긴이이두식
- ISBN : 9788960777521
- 15,000원
- 2015년 08월 28일 펴냄 (절판)
- 페이퍼백 | 140쪽 | 188*235mm
- 시리즈 : acorn+PACKT, 오픈소스 프로그래밍
판매처
- 현재 이 도서는 구매할 수 없습니다.
책 소개
요약
플룸(Flume)은 하둡(Hadoop) 기반의 로그 데이터 수집을 위해 아파치 재단에서 개발한 오픈소스 소프트웨어 엔진이다. 특히 로그 성격의 다양한 데이터를 병렬적으로 분산처리하면서 수집할 수 있는 강력한 기능을 가지고 있으며, 다양한 장비로그, 서버로그, 센서로그, IoT로그 등을 수집해 하둡에 저장할 수 있는, 하둡과 연동 가능한 대표적인 수집 소프트웨어 기술이다. 하둡 기반의 로그 데이터 수집에 대한 내용을 설명한 이 책은 빅데이터 시스템 개발자들에게 큰 도움이 될 것이다.
이 책에서 다루는 내용
■ 플룸 아키텍처 이해
■ 아파치로부터 오픈소스 플룸 다운로드와 설치
■ 메모리 또는 파일 기반 채널을 사용할 때 차이점 발견
■ 하둡 파일시스템(HDFS) 싱크 설정과 이해
■ 유동성이 많은 데이터 플로우를 만들기 위한 싱크 그룹 사용 방법
■ 데이터 수집을 위한 다양한 소스들에 대한 설정과 사용
■ 유효한 탑재량 기준으로 콘텐츠를 다른 목적지 대상에 대해서 데이터 기록과 경로에 대한 검사
■ 하둡에 대해 경로 중간에 데이터 변환
■ 사용자 데이터 흐름을 모니터
이 책의 대상 독자
이 책은 시간 내에 신뢰성을 가진 방법으로 하둡 안에 데이터셋을 이동시키기 위한 책임을 보유한 사람들을 위해 쓰여졌다. 주로 소프트웨어 엔지니어, 데이터베이스 관리자, 데이터 웨어하우스 관리자 등을 위한 책이다.
이 책의 구성
1장, ‘개요와 아키텍처’에서는 플룸을 소개하고 플룸으로 작업을 시도할 때 발생하는 문제 영역을 설명한다(특히 하둡에 대해). 다양한 컴포넌트들로 구성된 아키텍처 개요는 이후 단원에서 자세히 다룬다.
2장, ‘플룸 시작하기’에서는 플룸을 빠르게 실행해볼 수 있는 내용을 제공한다. 플룸 다운로드 방법, “Hello World” 설정을 생성하고 실행하는 방법을 설명한다.
3장, ‘채널’에서는 대부분의 사람들이 사용하게 되는 2개의 주요 채널에 대해 다룬다. 그리고 각각에 대한 설정 옵션을 설명한다.
4장, ‘싱크와 싱크 프로세서’에서는 플룸 출력으로 HDFS를 사용하는 상세한 내용을 다룬다. 압축 옵션 그리고 데이터 포맷팅을 위한 옵션을 포함한다. 또한 장애복구(failover) 옵션을 통해서 더욱 강력한 데이터 파이프라인을 만들기 위한 내용을 알아본다.
5장, ‘소스와 채널 셀렉터’에서는 플룸 입력 메커니즘의 여러 가지 방법 설정과 옵션을 소개한다. 데이터 내용에 따라 채널 간에 다르게 스위칭하는 것을 다루고 복잡한 데이터 흐름을 어떻게 만들 수 있는지 알아본다.
6장, ‘인터셉터, ETL, 라우팅’에서는 라우팅 결정을 내릴 채널 셀렉터를 사용하기 위해서 유효 탑재량(payload)으로부터 정보를 추출하고, 수행중인 데이터를 어떻게 변환할지를 설명한다. Avro 직렬화(serialization)를 사용하는 플룸 에이전트 계층화 방법뿐만 아니라 수동적으로 데이터를 입력하고 독립적인 Avro 클라이언트 테스트를 위한 플룸 커맨드라인에 대해서 알아본다.
7장, ‘플룸 모니터링’에서는 모닛(Monit), 나기오스(Nagios), 갱글리아(Ganglia), 사용자정의 후크(hook)를 비롯한 플룸의 내부와 외부 모두에서 모니터링 가능한 다양한 옵션들에 대해 설명한다.
8장, ‘실시간 분산 데이터 수집의 현실’에서는 플룸 구성과 사용 범위를 벗어나는 여러 가지 고려사항들을 알아본다.
목차
목차
- 1 개요와 아키텍처
- 플룸 0.9
- 플룸 1.X(Flume-NG)
- HDFS와 스트리밍 데이터/로그 문제
- 소스, 채널, 싱크
- 플룸 이벤트
- 인터셉터, 채널 셀렉터, 싱크 프로세서
- 단계별 데이터 수집(다중 플로우 에이전트)
- 요약
- 2 플룸 퀵 스타트
- 플룸 다운로드
- 하둡 배포판 플룸
- 플룸 설정파일 개요
- "Hello World"로 시작하기
- 요약
- 플룸 다운로드
- 3 채널
- 메모리 채널
- 파일 채널
- 요약
- 4 싱크와 싱크 프로세서
- HDFS 싱크
- 경로와 파일이름
- 파일 로테이션
- 압축 코덱
- 이벤트 시리얼라이저
- 텍스트 출력
- 텍스트 헤더
- 아파치 Avro
- 파일 형식
- 시퀀스 파일
- 데이터 스트림
- 압축 스트림
- 타임아웃과 워커
- 싱크그룹
- 로드밸런싱
- 장애조치
- 요약
- HDFS 싱크
- 5 소스와 채널 셀렉터
- 테일 사용의 문제점
- exec 소스
- 스풀링 디렉토리 소스
- Syslog 소스
- Syslog UDP 소스
- Syslog TCP 소스
- 멀티포트 syslog TCP 소스
- 채널 셀렉터
- 리플리케이팅
- 멀티플렉싱
- 요약
- 6 인터셉터, ETL, 라우팅
- 인터셉터
- 타임스탬프
- 호스트
- 스태틱
- 정규식 필터링
- 정규식 추출기
- 커스텀 인터셉터
- 티어링 데이터 플로우
- Avro 소스/싱크
- 커맨드라인 Avro
- Log4J 어펜더
- 로드밸런싱 Log4J 어펜더
- 라우팅
- 요약
- 인터셉터
- 7 플룸 모니터링
- 에이전트 프로세스 모니터링
- 모닛
- 나기오스
- 성능 메트릭스 모니터링
- 갱글리아
- 내부 HTTP 서버
- 커스텀 모니터링 후크
- 요약
- 에이전트 프로세스 모니터링
- 8 실시간 분산 데이터 수집의 현실
- 전송시간 vs 로그시간
- 타임 존 재앙
- 용량 계획
- 복수 데이터센터를 위한 고려사항
- 규정 준수와 데이터 만료
- 요약