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