visit
Author: Emil KoutanovThe use of the word “effective” in a title of a book is normally reserved for the most authoritative texts in their respective fields. For example, “Effective C++” by Scott Meyers or “Effective Java” by Josh Bloch. They are the absolute cream of the crop.So, does the book hold up to the title?
is the absolute bible on Apache Kafka.
I don’t want to overstate how good this book is, but it would be hard to. To start with, Effective Kafka is not a small book, at nearly 500 pages. But it reads quite well and is intelligently structured, with good grammatical style, a well-thought-out progression and lots of good analogies and illustrations.
The book is a complete guide on the core technology platform and is suitable for all levels of skill — from beginner to intermediate and advanced. It starts by assuming you know nothing and explains the core concepts with lots of diagrams. It then covers off architecture and design considerations, client and broker configuration, operational concerns, security and transactions.The book is a good blend of theory and hands-on practicality, with lots of snippets and examples in Java. I found it to be very up to date, covering off all Kafka features that I knew of and some that I didn’t.If you are only going to buy one book this year, this is it.Reasons to buy:
Reasons to pass:
Authors: Neha Narkhede, Gwen Shapira, Todd Palino
Kafka: The Definitive Guide is one of the pioneering books from none other than the founding maintainers of the platform.
The book is great at explaining the key concepts behind Kafka in a way that is easy to follow and understand. It’s an excellent book for both absolute beginners and intermediate users alike, and is a fantastic complement to the official documentation.The writing style is simple and concise. The book has a ton of practical examples and technical illustrations.There are some negatives too. The book is around four years old now and is beginning to show its age. Some of the new features, such as transactions, are not covered. The book sticks to the core topics well but at the expense of coverage of the more advanced topics, such as security.Reasons to buy:
Reasons to pass:
Authors: Ted Dunning, Ellen Friedman
Streaming Architecture is an alternate take on the Apache Kafka literature. Where other books present Kafka is a generic building block, Dunning and Friedman have decided to zero in on the stream processing use case, showcasing not only Apache Kafka but also MapR Streams, which is a complementary technology.
This book is ideal if you have a very specific set of use cases in mind, rather than looking to get into Kafka. Perhaps your work is heavy on stream processing; for example, analytics, complex event processing, windowed aggregation, clickstream analysis, and so on. Streaming Architecture is an excellent opportunity to kill two birds with one stone. (No animals were harmed…)
When considering this book, bear in mind that this is an introductory text. It is not a deep dive by any stretch and you will likely need to buy another book or take a course to fill in the gaps. It doesn’t make it a bad book because of the two-in-one (Kafka and MapR) proposition, but it is a niche book nonetheless, which may not be exactly what you are looking for.Reasons to buy:
Reasons to pass:
For its size, the quality of content and the delivery is excellent. Kafka in a Nutshell galops through the core concepts, such as topics, partitions, offsets, consumer groups, order of records, parallelism and at-least once delivery. Sure, it does not have the depth of the book, but it gives you a basic understanding.
The article also covers tooling, which is something that is often overlooked. There are examples that use the command-line interface to publish and consume messages, so it is a practical “getting started” guide as much as a theoretical primer.Kafka in a Nutshell also touches on the drawbacks of Kafka and some of the gotchas that practitioners should be aware of. It also talks about and how Kafka achieves its throughput. There is also mention of geographical replication, multi-tenancy and security.
Overall, Kafka in a Nutshell has got to be the best all-rounder—a great way to get your feet wet without spending a penny.
The article does not attempt to be a complete introduction unlike, say, Kafka in a Nutshell. It tries to be more hands-on. It gives you a bit of theoretical knowledge and follows with links to other useful resources. One such resource we will look at next.
The “Getting Started” section in official docs gives a compelling overview of the platform. It starts with an overview of event streaming and some of its potential use cases. It then presents Kafka in light of event streaming, which is also a good differentiator from message queues.
Having introduced Kafka, the guide then covers some of the main concepts and terminology, such as producers, consumers, topics and partitions.One advantage you get with the official docs is the assurance that they are correct and thorough. Beyond a short introductory section, the rest of the documentation reads like a user guide, which is basically what it was designed for.Also published on .