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

소득공제
아파치 카프카로 데이터 스트리밍 애플리케이션 제작
기업용 메시징 대기열 시스템의 설계와 구축 방법
베스트
IT 모바일 top100 3주
가격
30,000
10 27,000
YES포인트?
1,500원 (5%)
5만원 이상 구매 시 2천원 추가 적립
결제혜택
카드/간편결제 혜택을 확인하세요
배송안내
서울특별시 영등포구 은행로 11(여의도동, 일신빌딩) 변경
배송비?
무료

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

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

이 분야의 이벤트

책소개

목차

1장. 메시징 시스템 소개
__메시징 시스템의 기본원칙
__메시징 시스템의 이해
__지점 간 메시징 시스템
__게시-구독 메시징 시스템
__AMQP
__빅데이터 스트리밍 애플리케이션에 메시징 시스템 사용하기
__요약

2장. 카프카 소개, 분산 메시징 플랫폼
__카프카의 유래
__카프카의 구조
__메시지 토픽
__메시지 파티션
__복제와 복제 로그
__메시지 프로듀서
__메시지 컨슈머
__주키퍼의 역할
__요약

3장. 카프카 프로듀서
__카프카 프로듀서의 내부 구조
__카프카 프로듀서 API
____프로듀서 객체와 ProducerRecord 객체
____사용자 정의 파티션
____추가 프로듀서 설정
__자바 카프카 프로듀서 예제
__일반적인 메시지 게시 유형
__카프카 프로듀서 모범 사례
__요약

4장. 카프카 컨슈머
__카프카 컨슈머 내부 구조
____카프카 컨슈머의 역할 이해
__카프카 컨슈머 API
____컨슈머 설정
____구독과 폴링
____커밋 처리와 폴링
____추가 설정
__자바 카프카 컨슈머
__스칼라 카프카 컨슈머
____리밸런스 리스너
__일반적인 메시지 사용 유형
__모범 사례
____요약

5장. 카프카 스파크 스트리밍 애플리케이션 개발
__스파크 소개
____스파크의 구조
____스파크의 핵심요소
____스파크 운영 환경
__스파크 스트리밍
____수신자 기반 통합 방식
__직접 접근 방식
__로그 처리 활용 사례 - 사기 IP 감지
____메이븐
__프로듀서
____속성 리더
요약

6장. 카프카 스톰 애플리케이션 개발
__아파치 스톰 소개
____스톰 클러스터 구조
____스톰 애플리케이션의 개념
__아파치 헤론 소개
____헤론의 구조
__아파치 카프카와 아파치 스톰의 통합 - 자바
____예제
__아파치 카프카와 아파치 스톰의 통합 - 스칼라
__활용 사례 - 스톰, 카프카, 하이브를 사용한 로그 처리
____프로듀서
__스톰 애플리케이션
____프로젝트 실행
__요약

7장. 컨플루언트 플랫폼에서의 카프카 활용
__컨플루언트 플랫폼 소개
__컨플루언트 구조
__카프카 커넥트와 카프카 스트림의 이해
____카프카 스트림
__스키마 레지스트리를 사용한 에이브로 다루기
__카프카 데이터의 HDFS 이전
____캐머스
____고블린
____카프카 커넥트
____플룸
__요약

8장. 카프카를 사용한 ETL 파이프라인 제작
__ETL 파이프라인에서의 카프카 활용을 위한 고려사항
__카프카 커넥트 소개
__카프카 커넥트 심층 분석
__카프카 커넥트 소개 예제
__카프카 커넥트의 일반적인 활용 사례
__요약

9장. 카프카 스트림을 사용한 스트리밍 애플리케이션 개발
__카프카 스트림 소개
____스트림 처리에 카프카 사용하기
____카프카 스트림 - 가벼운 스트림 처리 라이브러리
__카프카 스트림 구조
__통합 프레임워크의 장점
__테이블과 스트림의 이해
____메이븐 의존성
____카프카 스트림 단어 수 세기 예제
____KTable
__카프카 스트림 활용 사례와 예제
____카프카 스트림의 메이븐 의존성
____Property Reader
____IP 레코드 프로듀서
____IP 룩업 서비스
____사기 감지 애플리케이션
__요약

10장. 카프카 클러스터 구축
__카프카 클러스터 내부구조
____주키퍼의 역할
____복제
____메타데이터 요청 처리
____프로듀서 요청 처리
____컨슈머 요청 처리
__용량 계획
____용량 계획의 목표
____복제 팩터
____메모리
____하드 드라이브
____네트워크
____CPU
__단일 클러스터 설치
__다중 클러스터 설치
__브로커 해제
__데이터 마이그레이션
__요약

11장. 빅 데이터 애플리케이션에 카프카 활용하기
__카프카의 대용량 데이터 관리
____적합한 하드웨어 선택
____프로듀서의 읽기와 컨슈머의 쓰기를 위한 선택
__카프카의 메시지 전송 체계
____최대 한 번 전송
____최대 한 번 전송
____정확히 한 번 전송
__빅 데이터와 일반적인 카프카 활용 형태
__카프카와 데이터 거버넌스
__알림과 모니터링
__유용한 카프카 측정 지표
____프로듀서 지표
____브로커 지표
____컨슈머 지표
__요약

12장. 카프카 보안
__카프카 보안 개요
__SSL을 사용한 전송 암호화
____카프카에서 SSL을 활성화하는 과정
____카프카 브로커에 대한 SSL 설정
____카프카 클라이언트 SSL 설정
__인증을 위한 커베로스 SASL
____카프카에서 SASL/GSSAPI를 활성화하는 과정
__ACL과 권한 인증 이해
____일반적인 ACL 동작
__주키퍼 인증 이해
__권한 인증을 위한 아파치 레인저
____레인저에 카프카 서비스 추가
____정책 추가
__모범 사례
__요약

13장. 스트리밍 애플리케이션 설계의 고려 사항
__처리 시간과 처리량
__데이터와 상태 정보의 지속성
__데이터 소스
__외부 데이터 룩업
__데이터 형식
__데이터 직렬화
__병렬 처리 수준
__순서가 바뀐 이벤트
__메시지 처리 체계
__요약

저자 소개 3

매니시 쿠마

관심작가 알림신청
 

Manish Kumar

인도의 데이터메티카 솔루션 유한회사(DataMetica Solution Pvt. Ltd.)의 테크니컬 아키텍트다. 데이터와 제품의 아키텍트로 약 11년간 데이터 관리 분야에서 근무했다. 효율적인 ETL 파이프라인 제작과 하둡(Hadoop)을 아우르는 보안 적용, 데이터 사이언스 문제에 최선의 솔루션을 제공하는 경험이 풍부하다. 빅데이터 세상에 합류하기 전에는 인도의 시어스 홀딩(Sears Holding) 사에서 테크 리드(Tech Lead)로 근무했다. 정보기술 분야에서 학사 학위를 받았으며, 하둡이나 하둡 보안과 관련된 빅데이터 개념을 다루는 여러 모임에서 주요 강사로 활동하고
인도의 데이터메티카 솔루션 유한회사(DataMetica Solution Pvt. Ltd.)의 테크니컬 아키텍트다. 데이터와 제품의 아키텍트로 약 11년간 데이터 관리 분야에서 근무했다. 효율적인 ETL 파이프라인 제작과 하둡(Hadoop)을 아우르는 보안 적용, 데이터 사이언스 문제에 최선의 솔루션을 제공하는 경험이 풍부하다. 빅데이터 세상에 합류하기 전에는 인도의 시어스 홀딩(Sears Holding) 사에서 테크 리드(Tech Lead)로 근무했다. 정보기술 분야에서 학사 학위를 받았으며, 하둡이나 하둡 보안과 관련된 빅데이터 개념을 다루는 여러 모임에서 주요 강사로 활동하고 있다.

Chanchal Singh

데이터메티카 솔루션 유한회사(DataMetica Solution Pvt. Ltd.)의 소프트웨어 엔지니어다. 개발자, 데이터 기술자, 그리고 팀장으로서 제품 개발과 설계 분야에서 3년 넘게 근무했다. 무엇보다 하둡, 스파크, 스톰, 카프카, 하이브, 피그(Pig), 플룸(Flume), 자바, 스프링 등의 분야에서 매우 다양한 경력을 갖고 있다. 지식을 나누고 다른 이에게 동기를 부여하는 것이 혁신을 위한 길이라고 믿는다. 이 책의 빅데이터 파트의 공동 저자다. 찬찰은 조직에 혁신적인 아이디어를 불어 넣는다. 뭄바이 대학(University of Mumbai)에서 정보기술 분야의
데이터메티카 솔루션 유한회사(DataMetica Solution Pvt. Ltd.)의 소프트웨어 엔지니어다. 개발자, 데이터 기술자, 그리고 팀장으로서 제품 개발과 설계 분야에서 3년 넘게 근무했다. 무엇보다 하둡, 스파크, 스톰, 카프카, 하이브, 피그(Pig), 플룸(Flume), 자바, 스프링 등의 분야에서 매우 다양한 경력을 갖고 있다. 지식을 나누고 다른 이에게 동기를 부여하는 것이 혁신을 위한 길이라고 믿는다. 이 책의 빅데이터 파트의 공동 저자다. 찬찰은 조직에 혁신적인 아이디어를 불어 넣는다. 뭄바이 대학(University of Mumbai)에서 정보기술 분야의 학사 과정을 마쳤고, 아미티 대학(Amity University)에서 석사 과정을 수료했다. 또한 IIT 뭄바이 기업가 모임에서 활동했다.
기계공학을 전공하던 학창시절에 누구에게나 매력 덩어리였던 컴퓨터로 기계의 데이터를 처리하고 동작을 제어하는 과정에서 흥미를 갖게 돼 정보기술 분야에 뛰어들었다. 2001년부터 마이크로소프트 한국, 싱가폴 지사에서 근무하면서, 아시아 지역 200여 개의 글로벌 기업 현장에서 기술 지원을 수행하면서, 다양한 기업용 IT 솔루션의 문제를 이해하고, 해결 방안을 찾는 소중한 경험을 갖게 되었다. 이후에는 여러 프로젝트에서 .NET 기반의 C# 개발자로서 상용 프로그램을 공급하는 즐거움도 누릴 수 있었다. 현재는 캐나다에 IT 컨설팅 회사를 설립하고, 기업 고객에게 필요한 소프트웨어 개발
기계공학을 전공하던 학창시절에 누구에게나 매력 덩어리였던 컴퓨터로 기계의 데이터를 처리하고 동작을 제어하는 과정에서 흥미를 갖게 돼 정보기술 분야에 뛰어들었다. 2001년부터 마이크로소프트 한국, 싱가폴 지사에서 근무하면서, 아시아 지역 200여 개의 글로벌 기업 현장에서 기술 지원을 수행하면서, 다양한 기업용 IT 솔루션의 문제를 이해하고, 해결 방안을 찾는 소중한 경험을 갖게 되었다. 이후에는 여러 프로젝트에서 .NET 기반의 C# 개발자로서 상용 프로그램을 공급하는 즐거움도 누릴 수 있었다. 현재는 캐나다에 IT 컨설팅 회사를 설립하고, 기업 고객에게 필요한 소프트웨어 개발과 컨설팅 서비스를 제공하고 있다.

최준의 다른 상품

품목정보

발행일
2018년 04월 30일
쪽수, 무게, 크기
336쪽 | 783g | 188*235*19mm
ISBN13
9791161751320

출판사 리뷰

이 책에서 다루는 내용

아파치 카프카의 기초 개념
스트리밍 애플리케이션의 기본 구성
스파크, 스톰, 헤론을 사용한 효과적인 카프카 스트리밍 애플리케이션 설계
메시징 시스템에 대한 빠른 처리 속도와 고성능, 고가용성 지원의 중요성 이해
카프카 애플리케이션 구축 과정에서 필요한 효과적인 용량 계획 수립
모범적인 보안 적용 사례에 대한 이해와 구현

이 책의 대상 독자

카프카 환경에서 가장 쉽고 가능한 방법으로 아파치 카프카의 다양한 도구를 사용하는 방법을 배우려는 독자를 위한 책이다. 약간의 자바 프로그래밍 경험이 있으면 이 책을 이해하기 더 쉽다.


이 책의 구성

1장, ‘메시징 시스템 소개’에서는 메시징 시스템의 개념을 비롯한 전반적인 사항과 기업의 관련 요구 사항을 설명한다. 지점 간(point to point) 또는 게시 및 구독(publish/subscribe) 형태의 메시징 시스템을 활용하는 여러 방법을 알아본다. AMQP(Advanced Message Queuing Protocol)도 다룬다.
2장, ‘카프카 소개’에서는 분산 메시징 플랫폼으로서의 카프카를 소개한다. 카프카 구조와 내부 구성 요소를 다룬다. 그리고 카프카 구성 요소의 역할, 중요성 등과 함께 카프카 메시징 시스템 안에서 각각의 구성 요소가 응답시간, 신뢰성, 확장성을 어떻게 지원하는지 알아본다.
3장, ‘카프카 프로듀서(Kafka Producers)’에서는 카프카 시스템에 메시지를 게시하는 방법을 설명한다. 카프카 프로듀서 API와 사용법을 더 자세하게 알아본다. 자바와 스칼라(Scala) 프로그램 언어로 카프카 프로듀서 API를 사용하는 예를 살펴본다. 카프카 토픽(Kafka Topic)으로 메시지를 공급하기 위한 프로듀서의 메시지 흐름과 몇 가지 일반적인 유형을 깊이 있게 다룬다. 또한 카프카 프로듀서의 성능을 최적화하기 위한 기술을 살펴본다.
4장, ‘카프카 컨슈머(Kafka Consumers)’에서는 카프카 시스템에서 메시지를 사용하는 방법을 다루고, 카프카 컨슈머 API와 활용법을 설명한다. 자바와 스칼라 프로그램 언어로 카프카 컨슈머 API를 사용하는 예를 살펴본다. 카프카 토픽으로 메시지를 사용하기 위한 컨슈머의 메시지 흐름과 몇 가지 일반적인 유형을 깊이 있게 다룬다. 또한 카프카 컨슈머의 성능을 최적화하기 위한 기술을 살펴본다.
5장, ‘카프카 스파크 스트리밍 애플리케이션 개발’에서는 아파치 스파크(Spark) 같이 널리 사용되는 분산처리엔진을 사용해 카프카와 통합하는 방법을 다룬다. 스파크를 사용한 카프카의 통합을 위한 여러 접근 방법과 장단점에 대한 전반적 사항을 설명한다. 실제 범례를 통한 자바와 스칼라의 예제를 보여준다.
6장, ‘카프카 스톰(Storm) 애플리케이션 개발’에서는 아파치 스톰처럼 널리 쓰이는 실시간 처리엔진으로 카프카를 통합하는 방법을 다룬다. 또한 아파치 스톰과 아파치 헤론(Heron)에 대한 전반적인 사항을 설명한다. 아파치 스톰과 카프카를 사용해 이벤트 처리가 보장되는 방법을 포함한 여러 가지 이벤트 처리 예제를 보여준다.
7장, ‘컨플루언트(Confluent) 플랫폼에서의 카프카 활용’에서는 컨플루언트라는 새로운 스트리밍 플랫폼, 즉 여러 부가 기능을 사용해 효과적으로 카프카를 사용하도록 지원하는 방법을 예제와 함께 다룬다.
8장, ‘카프카를 활용한 ETL 파이프라인 제작’에서는 카프카 커넥트(Kafka Connect), 카프카를 포함하는 ETL(extract, transform, load) 파이프라인을 만들기 위한 공통 구성 요소를 다룬다. ETL 파이프라인에서 카프카 커넥트를 어떻게 활용하는지 살펴보고, 관련된 기술적 개념을 깊이 있게 논의한다.
9장, ‘카프카 스트림을 활용한 스트리밍 애플리케이션 개발’에서는 카프카 0.10 릴리즈에 포함된 카프카 스트림(Kafka Stream)을 사용해 스트리밍 애플리케이션을 제작하는 방법을 다룬다. 카프카 스트림을 사용하는 예제와 빠르고 신뢰할 수 있는 스트리밍 애플리케이션을 만드는 과정을 살펴본다.
10장, ‘카프카 클러스터 구축’에서는 기업용 운영 시스템 수준에서의 카프카 클러스터(cluster) 구축을 집중해서 다룬다. 카프카 클러스터에 관련된 용량 계획, 단일 또는 다중 클러스터 구축 등의 깊이 있는 주제를 설명한다. 또한 멀티테넌트(multi-tenant) 환경에서 카프카를 관리하는 방법을 다룬다. 카프카 데이터 마이그레이션(migration) 과정에 포함돼야 할 여러 단계를 살펴본다.
11장, ‘빅데이터 애플리케이션을 위한 카프카 활용’에서는 빅데이터 애플리케이션으로서 카프카의 활용을 다양한 관점에서 살펴본다. 카프카에서 많은 양의 데이터를 관리하는 방법, 메시지의 전송을 견고하게 보장하는 방법, 데이터 손실이 없는 장애 처리 방법, 빅데이터 파이프라인을 사용할 때 적용되는 거버넌스에 필요한 원칙을 다룬다.
12장, ‘카프카 보안’에서는 카프카 클러스터의 보안을 다룬다. 사용자 인증(authentication)과 권한 인증(authorization)의 동작원리를 예제와 함께 살펴본다.
13장, ‘스트리밍 애플리케이션 설계의 고려 사항’에서는 스트리밍 애플리케이션을 만들기 위해 설계할 때 고려할 사항을 다룬다. 병렬성(parallelism)과 메모리 조정 등과 같은 내용을 여러 관점에서 설명한다. 스트리밍 애플리케이션을 설계하기 위한 다양한 이론을 이해하기 쉽게 설명한다.

지은이의 말

아파치 카프카(Apache Kafka)는 메시징 큐(messaging queue) 또는 기업용 메시징 시스템 역할을 하는, 잘 알려진 분산 스트리밍 플랫폼이다. 카프카는 레코드 스트림을 게시, 구독하도록 돕고, 문제 발생 시 내결함성(fault-tolerant)을 지원하며 메시지를 처리한다.
이 책에서는 아파치 카프카와 다른 빅데이터 도구를 사용해 기업용 스트리밍 프로그램을 설계하고 구축할 수 있도록 설명한다. 많은 양의 데이터를 쉽게 처리하기 위해 카프카를 효과적으로 사용하는 방법에 대한 좋은 사례와 일반적으로 발생하는 문제점을 방지하는 방법을 다룬다. 먼저 전반부에는 메시징 시스템의 유형을 이해하고, 아파치 카프카의 상세한 내부 구조를 면밀하게 소개한다. 후반에서는 아파치 스파크(Spark), 아파치 스톰(Storm) 같이 다양한 프레임워크와 도구를 사용해 스트리밍 프로그램을 설계하는 과정을 살펴본다. 일단 기초적인 사항을 이해하고, 용량 계획(capacity planning), 보안 같은 아파치 카프카의 고급 주제를 다룬다.
이 책을 모두 읽으면, 아파치 카프카의 활용과 효율적인 스트리밍 데이터 애플리케이션의 설계에 친숙해지기 위한 모든 정보를 갖게 된다.

옮긴이의 말

먼저 경험이 풍부한 독자에게는 카프카를 포함한 다양하고 새로운 기술에 대해 두려움을 갖지 말라는 메시지를 전하고 싶다. 이 책에 등장하는 메시지와 스트림을 처리하기 위한 수많은 기술과 용어는 전혀 새로운 것은 아니며, 기존 용어가 조금 사라지고, 변화에 따라 기존 기술이 새 이름으로 대체된 것이다. 카프카는 약 15년 전부터 이미 있던 메시징 시스템 개념에 여전히 충실하다.
새로운 도전의 긴 여정을 앞두고 있는 독자에게는 책의 어느 한 부분에 얽매이지 말라고 전하고 싶다. 분명 기업용 메시징 시스템은 어려운 주제다. 저자의 입장에서도 자세히 설명할 수 있겠지만, 광범위한 지식을 더 쉽고 자세하게 담기는 어려웠을 것이다. 예를 들어 누군가에게 객체나 오브젝트를 말하면 다양한 속성을 가진 물건을 떠올릴 수도 있고, 프로그램을 처음 배운 이는 클래스를 떠올리기도 하고, 숙련된 개발자 중에는 직접 만든 라이브러리를 머릿속에 그릴 수도 있다. 이렇게 사람들은 용어를 각자 다른 형태로 받아들인다. 처음부터 어떤 용어가 실제로 의미하는 모습으로 완벽하게 소화되기는 어렵지만, 여러 번 실습하고 그 결과를 전체적으로 보는 과정에서는 결국 추상적인 단어도 설명조차 필요 없는 분명한 개념이 된다.

리뷰/한줄평0

리뷰

첫번째 리뷰어가 되어주세요.

한줄평

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

27,000
1 27,000