데이터 과학/데이터 엔지니어링

그웬 샤피라 , 토드 팔리노 , 라지니 시바람 , 크리트 페티, 카프카 핵심 가이드 - 대규모 실시간 데이터와 스트림 처리, 제이펍

booksworld 2025. 4. 21. 01:00


#광고 - 링크로 구매 시 글쓴이에게 소정의 수수료가 제공됩니다.

 

 

"카프카 핵심 가이드"는 아파치 카프카의 모든 기능과 활용 방법을 심도 있게 다룬 필독서입니다. 이 책은 카프카의 창시자들과 한국인 개발자가 직접 참여하여, 최신 버전의 카프카에 대한 정보를 제공합니다. 데이터의 이동은 현대 애플리케이션에서 매우 중요한 요소이며, 이 책은 카프카를 통해 데이터를 효과적으로 관리하는 방법을 제시합니다.

특히, 이 가이드는 카프카의 AdminClient API, 트랜잭션, 보안 기능 등 최신 기능을 포함한 개정증보판으로, 초보자부터 전문가까지 모두에게 유용한 정보를 제공합니다. 카프카 클러스터를 프로덕션 환경에 설치하는 방법, 신뢰성 있는 이벤트 주도 마이크로서비스 개발, 그리고 규모 가변적인 스트림 처리 애플리케이션 개발에 대한 상세한 설명이 포함되어 있습니다.

저자들은 카프카의 설계 원칙, 핵심 API, 복제 프로토콜 등 아키텍처의 세밀한 부분까지 설명하며, 다양한 예제를 통해 독자들이 쉽게 이해할 수 있도록 돕습니다. 또한 카프카의 설치 및 설정에 관한 모범 사례, 메시지를 읽고 쓰는 방법, 데이터 전달 패턴과 활용 사례를 통해 실제적인 활용 방법을 제시합니다.

이 책은 카프카를 처음 접하는 이들에게는 기초부터 탄탄히 다져주고, 경험이 있는 개발자들에게는 심도 깊은 지식을 제공하여 실무에 적용할 수 있도록 돕습니다. 카프카를 통해 데이터 파이프라인과 애플리케이션을 개발하는 데 있어 필요한 모든 정보를 포함하고 있어, 데이터 관리와 스트림 처리에 관심 있는 모든 이들에게 꼭 필요한 자료입니다.

29700원의 가격으로, 카프카에 대한 깊이 있는 통찰력과 실무적인 팁을 제공하는 이 책은 데이터 처리의 새로운 패러다임을 이해하는 데 큰 도움이 될 것입니다.

 

 

 

목차


옮긴이 머리말 xv
베타리더 후기 xvi
제2판 추천사 xviii
제1판 추천사 xx
시작하며 xxiii

CHAPTER 1 카프카 시작하기 1
1.1 발행/구독 메시지 전달 2
1.2 카프카 입문 4
1.3 왜 카프카인가? 10
1.4 데이터 생태계 12
1.5 카프카의 기원 15
1.6 카프카 시작하기 18

CHAPTER 2 카프카 설치하기 19
2.1 환경 설정 19
2.2 카프카 브로커 설치하기 23
2.3 브로커 설정하기 25
2.4 하드웨어 선택하기 34
2.5 클라우드에서 카프카 사용하기 36
2.6 카프카 클러스터 설정하기 37
2.7 프로덕션 환경에서의 고려 사항 44
2.8 요약 48

CHAPTER 3 카프카 프로듀서: 카프카에 메시지 쓰기 49
3.1 프로듀서 개요 50
3.2 카프카 프로듀서 생성하기 52
3.3 카프카로 메시지 전달하기 54
3.4 프로듀서 설정하기 57
3.5 시리얼라이저 65
3.6 파티션 73
3.7 헤더 76
3.8 인터셉터 77
3.9 쿼터, 스로틀링 79
3.10 요약 81

CHAPTER 4 카프카 컨슈머: 카프카에서 데이터 읽기 83
4.1 카프카 컨슈머: 개념 83
4.2 카프카 컨슈머 생성하기 90
4.3 토픽 구독하기 91
4.4 폴링 루프 92
4.5 컨슈머 설정하기 94
4.6 커밋과 오프셋 102
4.7 리밸런스 리스너 109
4.8 특정 오프셋의 레코드 읽어오기 112
4.9 폴링 루프를 벗어나는 방법 113
4.10 디시리얼라이저 115
4.11 독립 실행 컨슈머: 컨슈머 그룹 없이 컨슈머를 사용해야 하는 이유와 방법 121
4.12 요약 123

CHAPTER 5 프로그램 내에서 코드로 카프카 관리하기 125
5.1 AdminClient 개요 126
5.2 AdminClient 사용법: 생성􏘙 설정􏘙 닫기 128
5.3 필수적인 토픽 관리 기능 130
5.4 설정 관리 134
5.5 컨슈머 그룹 관리 136
5.6 클러스터 메타데이터 140
5.7 고급 어드민 작업 141
5.8 테스트하기 145
5.9 요약 147

CHAPTER 6 카프카 내부 메커니즘 149
6.1 클러스터 멤버십 149
6.2 컨트롤러 150
6.3 복제 158
6.4 요청 처리 161
6.5 물리적 저장소 169
6.6 요약 181

CHAPTER 7 신뢰성 있는 데이터 전달 183
7.1 신뢰성 보장 184
7.2 복제 185
7.3 브로커 설정 186
7.4 신뢰성 있는 시스템에서 프로듀서 사용하기 192
7.5 신뢰성 있는 시스템에서 컨슈머 사용하기 195
7.6 시스템 신뢰성 검증하기 200
7.7 요약 204

CHAPTER 8 ‘정확히 한 번’ 의미 구조 205
8.1 멱등적 프로듀서 206
8.2 트랜잭션 210
8.3 트랜잭션 성능 225
8.4 요약 225

CHAPTER 9 데이터 파이프라인 구축하기 227
9.1 데이터 파이프라인 구축 시 고려사항 228
9.2 카프카 커넥트 vs􏘛 프로듀서/컨슈머 235
9.3 카프카 커넥트 235
9.4 카프카 커넥트의 대안 257
9.5 요약 258

CHAPTER 10 클러스터간 데이터 미러링하기 259
10.1 클러스터간 미러링 활용 사례 260
10.2 다중 클러스터 아키텍처 261
10.3 아파치 카프카의 미러메이커 275
10.4 기타 클러스터간 미러링 솔루션 288
10.5 요약 293

CHAPTER 11 보안 295
11.1 보안 설정 적용하기 296
11.2 보안 프로토콜 298
11.3 인증 301
11.4 암호화 324
11.5 인가 326
11.6 감사 333
11.7 주키퍼 보안 335
11.8 플랫폼 보안 338
11.9 요약 340

CHAPTER 12 카프카 운영하기 343
12.1 토픽 작업 343
12.2 컨슈머 그룹 350
12.3 동적 설정 변경 353
12.4 쓰기 작업과 읽기 작업 358
12.5 파티션 관리 364
12.6 기타 툴 374
12.7 안전하지 않은 작업 375
12.8 요약 377

CHAPTER 13 카프카 모니터링하기 379
13.1 지표 기초 379
13.2 서비스 수준 목표 383
13.3 카프카 브로커 지표 386
13.4 클라이언트 모니터링 410
13.5 랙 모니터링 417
13.6 종단 모니터링 418
13.7 요약 419

CHAPTER 14 스트림 처리 421
14.1 스트림 처리란 무엇인가? 423
14.2 스트림 처리 개념 426
14.3 스트림 처리 디자인 패턴 434
14.4 예제로 보는 카프카 스트림즈 443
14.5 카프카 스트림즈: 아키텍처 개요 452
14.6 스트림 처리 활용 사례 459
14.7 스트림 처리 프레임워크 선택하기 460
14.8 요약 462

APPENDEX A 다른 운영체제에 카프카 설치하기 465
A.1 윈도우 시스템에 설치하기 465
A.2 macOS에 설치하기 468

APPENDEX B 추가적으로 사용할 수 있는 툴 471
B.1 통합 플랫폼 471
B.2 클러스터 설치 및 관리 473
B.3 모니터링 및 데이터 탐색 474
B.4 클라이언트 라이브러리 476
B.5 스트림 처리 476

찾아보기 477

 

 

 

- 교보문고: https://bitl.bz/2GgwEQ

- Yes24: https://bitl.bz/XVcwLy

- 쿠팡: https://bitl.bz/vi8qkf