Top

아파치 플링크 [분산 환경에서 스트리밍 데이터 처리를 위한 플랫폼]

  • 원서명Learning Apache Flink: Discover the definitive guide to crafting lightning-fast data processing for distributed systems with Apache Flink (ISBN 9781786466228)
  • 지은이탄마이 데쉬판데(Tanmay Deshpande)
  • 옮긴이남궁영환
  • ISBN : 9791161750408
  • 30,000원
  • 2017년 08월 31일 펴냄
  • 페이퍼백 | 368쪽 | 188*235mm
  • 시리즈 : acorn+PACKT

책 소개

소스 코드 파일은 여기에서 내려 받으실 수 있습니다.

본문에 쓰인 컬러 이미지는 여기에서 내려 받으세요.
요약

대용량 데이터의 한계를 넘어 스트리밍 데이터 처리/분석, CEP 등 데이터의 실시간 처리/분석이 보편화되고 있다. 이 책은 스트리밍 데이터 처리, 실시간 분석의 대표 솔루션 중 하나인 아파치 플링크에 대한 전반적인 내용을 다룬다. 기본 개념, 설치 방법, 다양한 데이터 처리 방식을 비롯해 머신 러닝 기반 분석, 그래프 데이터 처리 등 풍부하게 제공되는 확장 기능에 대한 활용 방법도 소개하고 있다.

이 책의 대상 독자

분산 데이터 환경에서 배치 데이터 처리와 실시간 데이터 처리에 관심이 많은 빅데이터 개발자를 위한 책이다. 또한 분석 솔루션을 상용화, 산업화하고자 하는 데이터 과학자에게도 적합하다.

이 책의 구성

1장, ‘아파치 플링크 소개’에서는 플링크에 관한 역사, 아키텍처, 특징을 소개한다. 아울러 단일 노드와 다중 노드에서 아파치 플링크를 어떻게 설치하는지도 알아본다.
2장, ‘DataStream API를 이용한 데이터 처리’에서는 플링크의 스트리밍에 대한 개념을 자세히 다룬다. DataStream API에서 사용할 수 있는 데이터 소스, 트랜스포메이션, 데이터 싱크에 대해서도 배울 것이다.
3장, ‘배치 프로세싱 API를 이용한 데이터 처리 배치’에서는 처리용 API인 DataSet API를 소개한다. DataSet API에서 사용할 수 있는 데이터 소스, 트랜스포메이션, 데이터 싱크에 대해 배운다. 또한 API에 대해 사용할 수 있는 커넥션에 대해서도 살펴본다.
4장, ‘Table API를 이용한 데이터 처리’에서는 플링크 데이터 처리 프레임워크로 SQL 개념을 어떻게 사용하는지 알아본다. 실제 사례에 이 개념을 어떻게 적용시키는지도 학습한다.
5장, ‘CEP(Complex Event Processing)’에서는 플링크 CEP 라이브러리를 이용해 CEP 문제를 어떻게 해결하는지에 관한 통찰력을 얻을 수 있을 것이다. 패턴 정의, 추적, 경고 생성에 대해서도 배운다.
6장, ‘FlinkML을 이용한 머신 러닝’에서는 머신 러닝의 개념에 대해 자세히 알아보고, 실제 사례에 다양한 알고리즘들을 어떻게 적용하는지 다룬다. 7장, ‘플링크 그래프 API – Gelly’에서는 그래프의 개념에 대해 소개하고, 플링크 Gelly가 해결할 수 있는 실제 사례를 알아본다. 이를 통해 플링크가 그래프를 처리하는 방법을 알 수 있을 것이다.
8장, ‘플링크와 하둡을 이용한 분산 데이터 처리’에서는 플링크 잡을 처리하기 위해 기존의 하둡-YARN 클러스터를 어떻게 사용하는지 자세히 다룬다. YARN에서 플링크가 어떻게 동작하는지도 상세하게 설명한다.
9장, ‘클라우드상에서 플링크 배포’에서는 클라우드에서 플링크를 배포하는 방법을 소개한다. 구글 클라우드(GCP)와 아마존 웹 서비스상에서 플링크를 어떻게 사용하는지도 자세히 설명한다.
10장, ‘모범 사례’에서는 플링크를 효율적으로 사용하기 위해 개발자들이 준수해야 할 다양한 모범 사례를 다룬다. 플링크 환경을 제어하기 위한 로깅, 모니터링에 관련된 모범 사례도 설명한다.

저자/역자 소개

지은이의 말

이 책은 아파치 플링크를 통해 배치 데이터 처리와 스트림 데이터 처리를 어떻게 하는지에 대한 전반적인 가이드를 제공한다. 아파치 플링크 에코 시스템 소개를 시작으로, 배치 데이터세트와 스트림 데이터세트를 위해 DataSet API와 DataStream API의 설치와 사용법을 소개한다. 플링크에서 SQL의 장점을 극대화할 수 있도록 데이터를 쿼리하고 조작할 수 있는 Table API에 대해서도 알아본다. 책의 후반부에서는 이벤트 처리, 머신 러닝, 그래프 데이터 처리 같은 복잡한 작업을 해내는 데 필요한 아파치 에코 시스템의 구성 요소에 대해 배운다. 책의 끝에서는 다양한 주제를 다룬다. 이를테면 확장성을 고려한 플링크 활용 방안, 성능 최적화 등이 있다. 아울러 하둡, 일래스틱서치, 카산드라, 카프카 같은 다른 툴과 플링크를 어떻게 연동, 통합하는지도 다룬다.
아파치 플링크에 대해 더 깊이 있게 알고 싶거나 어떻게 하면 더 잘 활용할 수 있을지 고민하고 있다면, 이 책에서 해답을 찾을 수 있으리라 생각한다. 이 책에서는 여러 가지 실제 사례를 다루고 있으며, 이를 통해 그러한 궁금증들을 하나씩 해소할 수 있을 것이다.

지은이 소개

탄마이 데쉬판데(Tanmay Deshpande) 하둡과 빅데이터 에반젤리스트(Evangelist)다. 현재 인도의 푸네(Pune)에 있는 슐룸베르거(Schlumberger)에서 빅데이터 아키텍트로 일하고 있다. 하둡(Hadoop), 하이브(Hive), 피그(Pig), NoSQL 데이터베이스, 머하웃(Mahout), 스쿱(Sqoop), 자바(Java), 클라우드 컴퓨팅 같은 광범위한 분야의 기술에 관심이 많다. 정유/천연가스, 금융, 통신, 제조, 보안, 소매업 등과 같은 다양한 산업 분야에서 애플리케이션 개발 경험을 쌓았다. 머신 러닝 문제를 해결하는 데 열중하고 있으며, 손에 잡히는 대로 다양한 책을 읽는 데 많은 시간을 할애하고 있다. 오픈소스 기술에도 지대한 관심을 갖고 있으며, 다양한 대외 발표를 통해 이에 대한 노력을 기울이고 있다. 슐룸베르거에 합류하기 전에는 시만텍(Symantec), 루미아타(Lumiata), 인포시스(Infosys)에서 근무했다. 혁신적인 사고와 다이내믹한 리더십을 통해 다양한 프로젝트를 성공적으로 완수해왔다.
개인 웹사이트(http://hadooptutorials.co.in)에서 꾸준히 블로그 활동을 하고 있다. https://in.linkedin.com/in/deshpandetanmay를 통해 링크드인 1촌 신청도 할 수 있다.
또한 수년간 팩트출판사를 통해 『Mastering DynamoDB』(2014), 『DynamoDB Cookbook』(2015), 『Hadoop Real World Solutions Cookbook-Second Edition』(2016), 『Hadoop: Data Processing and Modelling』(2016), 『Hadoop Blueprints』(2016) 등 여러 IT 기술 전문 서적을 출간했다.

옮긴이의 말

단순히 대용량이라는 개념을 넘어 ‘빅데이터’라는 용어가 사용된 것은 불과 10년 정도지만, 그동안 데이터 처리/분석 기술은 대단한 혁신을 이룬 듯 하다. 최근 IoT와 미디어 분야의 산업이 급속도로 커지면서, 배치(Batch) 방식을 이용한 대량 데이터 처리/분석보다 실시간, 대용량 스트리밍 데이터 처리, CEP(Complex Event Processing)의 중요성이 날로 높아지고 있다. 스트리밍 데이터 처리/분석에 대해서는 스톰(Storm), 스파크 스트리밍(Spark Streaming), 아파치 에이펙스(Apex) 등 유명한 솔루션이 많지만, 이 중에서도 아파치 플링크(Flink)는 단연 스트리밍에 최적화된 솔루션이라고 할 수 있다.
특히, 다양한 분석 기능을 제공하면서 점차 응용 분야를 확대해나가고 있는 점에도 주목할 필요가 있다.
이 책은 아파치 플링크의 기본 개념을 친절하게 소개하고 있다. 또한 플링크를 보다 빠르고 쉽게 익힐 수 있도록 다양한 기능에 관한 자세한 설명과 많은 예제 코드를 제공하고 있다. 그동안 상대적으로 플링크에 관한 서적이 거의 없었는데, 이 책이 가뭄의 단비 같은 역할을 해줄 것으로 생각된다. 아울러 플링크의 확산에도 많은 도움이 될 것으로 기대한다.

옮긴이 소개

남궁영환

고려대학교 컴퓨터학과(학사/석사)와 서던캘리포니아 대학교(석사)를 졸업하고, 플로리다 대학교에서 데이터 마이닝을 주제로 컴퓨터공학 박사 학위를 취득했다. 삼성SDS연구소에서 클라우드 컴퓨팅, 빅데이터 인프라 플랫폼, 데이터 과학/분석에 관한 다양한 최신 기술의 연구/개발 과제를 수행했다. 현재 아마존 웹 서비스(Amazon Web Services)에서 프로페셔널 서비스 빅데이터 컨설턴트(Professional Services Big Data Consultant)로 활동 중이다.

목차

목차
  • 1장. 아파치 플링크 소개
    • 아파치 플링크의 역사
    • 아키텍처
    • 분산형 실행
    • 주요 특징
    • 플링크 설치 시작
    • 클러스터 세팅
    • 예제 애플리케이션 실행 테스트
    • 이 장의 요약

  • 2장. DataStream API를 이용한 데이터 처리
    • 실행 환경
    • 데이터 소스
    • 트랜스포메이션
    • 물리적 파티셔닝
    • 데이터 싱크
    • 이벤트 타임과 워터마크
    • 커넥터
    • 적용 사례 - 센서 데이터 분석
    • 이 장의 요약

  • 3장. 배치 프로세싱 API를 이용한 데이터 처리
    • 데이터 소스
    • 트랜스포메이션
    • 브로드캐스트 변수
    • 데이터 싱크
    • 커넥터
    • Iterations
    • 적용 사례 – 플링크 Batch API를 이용한 스포츠 데이터 분석
    • 이 장의 요약

  • 4장. Table API를 이용한 데이터 처리
    • 테이블 등록
    • 등록된 테이블 액세스 방법
    • 주요 연산 명령어
    • SQL
    • 활용 예제–플링크 Batch API를 이용한 스포츠 데이터 분석
    • 이 장의 요약

  • 5장. CEP - Complex Event Processing
    • CEP란 무엇인가?
    • Flink CEP
    • Pattern API
    • 적용 사례 – 온도 센서에 대한 CEP
    • 이 장의 요약

  • 6장. FlinkML을 이용한 머신 러닝
    • 머신 러닝이란 무엇인가?
    • FlinkML
    • FlinkML에서 지원할 수 있는 알고리즘
    • 이 장의 요약

  • 7장. 플링크 그래프 API - Gelly
    • 그래프란 무엇인가?
    • Gelly – 플링크 그래프 API
    • 반복 수행을 통한 그래프 데이터 처리
    • 적용 사례 - 항공 여행 최적화 문제
    • 이 장의 요약

  • 8장. 플링크와 하둡을 이용한 분산 데이터 처리
    • 하둡의 개요
    • YARN상에서의 플링크
    • 이 장의 요약

  • 9장. 클라우드상에서 플링크 배포
    • 구글 클라우드 기반 플링크
    • 이 장의 요약

  • 10장. 모범 사례
    • 로깅 모범 사례
    • 파라미터 툴 사용
    • 대규모 TupleX 타입 네이밍
    • 사용자 시리얼라이저 등록
    • 메트릭스
    • REST API 모니터링
    • 백 프레셔 모니터링

도서 오류 신고

도서 오류 신고

에이콘출판사에 관심을 가져 주셔서 고맙습니다. 도서의 오탈자 정보를 알려주시면 다음 개정판 인쇄 시 반영하겠습니다.

오탈자 정보는 다음과 같이 입력해 주시면 됩니다.

(예시) p.100 아래에서 3행 : '몇일'동안 -> 며칠동안