Apache Kafka


Apache Kafka
eBook: $20.99
Formats: PDF, PacktLib, ePub and Mobi formats
$9.99
save 52%!
Print + free eBook + free PacktLib access to the book: $55.98    Print cover: $34.99
$34.99
save 37%!
Free Shipping!
UK, US, Europe and selected countries in Asia.
Also available on:
Overview
Table of Contents
Author
Reviews
Support
Sample Chapters
  • Write custom producers and consumers with message partition techniques
  • Integrate Kafka with Apache Hadoop and Storm for use cases such as processing streaming data
  • Provide an overview of Kafka tools and other contributions that work with Kafka in areas such as logging, packaging, and so on

Book Details

Language : English
Paperback : 88 pages [ 235mm x 191mm ]
Release Date : October 2013
ISBN : 1782167935
ISBN 13 : 9781782167938
Author(s) : Nishant Garg
Topics and Technologies : All Books, Big Data and Business Intelligence, Open Source

Table of Contents

Preface
Chapter 1: Introducing Kafka
Chapter 2: Installing Kafka
Chapter 3: Setting up the Kafka Cluster
Chapter 4: Kafka Design
Chapter 5: Writing Producers
Chapter 6: Writing Consumers
Chapter 7: Kafka Integrations
Chapter 8: Kafka Tools
Index
    • Chapter 2: Installing Kafka
      • Installing Kafka
        • Downloading Kafka
        • Installing the prerequisites
          • Installing Java 1.6 or later
        • Building Kafka
      • Summary
      • Chapter 3: Setting up the Kafka Cluster
        • Single node – single broker cluster
          • Starting the ZooKeeper server
          • Starting the Kafka broker
          • Creating a Kafka topic
          • Starting a producer for sending messages
          • Starting a consumer for consuming messages
        • Single node – multiple broker cluster
          • Starting ZooKeeper
          • Starting the Kafka broker
          • Creating a Kafka topic
          • Starting a producer for sending messages
          • Starting a consumer for consuming messages
        • Multiple node – multiple broker cluster
        • Kafka broker property list
        • Summary
        • Chapter 4: Kafka Design
          • Kafka design fundamentals
          • Message compression in Kafka
          • Cluster mirroring in Kafka
          • Replication in Kafka
          • Summary
          • Chapter 5: Writing Producers
            • The Java producer API
            • Simple Java producer
              • Importing classes
              • Defining properties
              • Building the message and sending it
            • Creating a simple Java producer with message partitioning
              • Importing classes
              • Defining properties
              • Implementing the Partitioner class
              • Building the message and sending it
            • The Kafka producer property list
            • Summary
            • Chapter 6: Writing Consumers
              • Java consumer API
                • High-level consumer API
                • Simple consumer API
              • Simple high-level Java consumer
                • Importing classes
                • Defining properties
                • Reading messages from a topic and printing them
              • Multithreaded consumer for multipartition topics
                • Importing classes
                • Defining properties
                • Reading the message from threads and printing it
              • Kafka consumer property list
              • Summary
              • Chapter 7: Kafka Integrations
                • Kafka integration with Storm
                  • Introduction to Storm
                  • Integrating Storm
                • Kafka integration with Hadoop
                  • Introduction to Hadoop
                  • Integrating Hadoop
                  • Hadoop producer
                  • Hadoop consumer
                • Summary
                • Chapter 8: Kafka Tools
                  • Kafka administration tools
                    • Kafka topic tools
                    • Kafka replication tools
                  • Integration with other tools
                  • Kafka performance testing
                  • Summary

                  Nishant Garg

                  Nishant Garg is an architect with around 14 years of experience in building enterprise-grade solutions using big data and Java Enterprise technologies. He has extensive experience with cardinal technologies, including Hadoop, Hive, HBase, MongoDB, MPP Databases, and SOA. He received his MS in Software Systems from the Birla Institute of Technology and Science, Pilani, India. He has experienced working with the most recognizable names in IT services and financial industries, employing full software lifecycle methodologies like Agile and SCRUM. Nishant has undertaken many speaking engagements on big data technologies and is an active contributor to open source. He is also an author of a book on Apache Kafka by Packt Publishing.

                  Submit Errata

                  Please let us know if you have found any errors not listed on this list by completing our errata submission form. Our editors will check them and add them to this list. Thank you.


                  Errata

                  - 9 submitted: last submission 26 Jun 2014

                  Errata Category: Typo | Page No: 29

                  First bullet's sub bullet:

                  "Loosing messages due to failure"

                  Should be

                  "Losing messages due to failure"

                  Errata Category: Grammar | Page No: 32

                  First bullet point:

                  As soon as the message is published, it is written to the log of the lead replica and all the followers of the lead start pulling the

                  message, and by using a single channel, the order of messages is ensured"

                  Should be

                  "As soon as the message is published, it is written to the log of the lead replica and all the followers of the lead start pulling the

                  message. By using a single channel, the order of messages is ensured"

                  Errata Category: Typo | Page No: 45

                  Second bullet point:

                  "ZooKeeper sink time"

                  Should be

                  "ZooKeeper sync time"

                  Errata Category: Technical | Page No: 60

                  In the "Introduction to Hadoop" section:

                  "(introduced by Google)"

                  Should be

                  "(popularized by Google)"

                  Errata Category: Grammar | Page No: 68

                  Second paragraph:

                  "Camus (https://github.com/linkedin/camus ) is another art of work done by LinkedIn"

                  Should be

                  "Camus (https://github.com/linkedin/camus ) is another project from LinkedIn"

                   

                  Last but second bullet:

                  "REST service for Mozilla Matrics ( https://github.com/mozilla-metrics/bagheera)"

                  Should be

                  "REST service for Mozilla Metrics ( https://github.com/mozilla-metrics/bagheera)"

                  Errata Category: Grammar | Page No: 69

                  In the tip"

                  "For detailed information on how to go for Kafka performance testing..."

                  Should be

                  "For detailed information on how to carry out Kafka performance testing..."

                   

                  The Summary section:

                  "...wrote few basic producers and consumers"

                  Should be

                  "wrote a few basic producers and consumers"

                   

                  The Summary section:

                  "In the end, we discussed its integration with technologies such as Hadoop and Storm."

                  Should be

                  "Finally, we discussed its integration with technologies such as Hadoop and Storm."

                  Errata Category: Grammar | Page No: 46

                  "Compared to  high-level consumer API, developer needs to put in extra efforts to gain this low-level control within consumers..."

                  Should be

                  "Compared to a high-level consumer API, a developer needs to put in extra efforts to gain this low-level control within consumers"

                  Errata Category: Graphics | Page No: 41

                  Errata Category: Graphics | Page No: 46


                  Sample chapters

                  You can view our sample chapters and prefaces of this title on PacktLib or download sample chapters in PDF format.

                  Frequently bought together

                  Apache Kafka +    Plone 3.3 Site Administration =
                  50% Off
                  the second eBook
                  Price for both: $30.90

                  Buy both these recommended eBooks together and get 50% off the cheapest eBook.

                  What you will learn from this book

                  • Download and build Kafka
                  • Set up single as well as multi-node Kafka clusters and send messages
                  • Learn Kafka design internals and message compression
                  • Understand how replication works in Kafka
                  • Write Kafka message producers and consumers using the Kafka producer API
                  • Get an overview of consumer configurations
                  • Integrate Kafka with Apache Hadoop and Storm
                  • Use Kafka administration tools

                  In Detail

                  Message publishing is a mechanism of connecting heterogeneous applications together with messages that are routed between them, for example by using a message broker like Apache Kafka. Such solutions deal with real-time volumes of information and route it to multiple consumers without letting information producers know who the final consumers are.

                  Apache Kafka is a practical, hands-on guide providing you with a series of step-by-step practical implementations, which will help you take advantage of the real power behind Kafka, and give you a strong grounding for using it in your publisher-subscriber based architectures.

                  Apache Kafka takes you through a number of clear, practical implementations that will help you to take advantage of the power of Apache Kafka, quickly and painlessly. You will learn everything you need to know for setting up Kafka clusters. This book explains how Kafka basic blocks like producers, brokers, and consumers actually work and fit together. You will then explore additional settings and configuration changes to achieve ever more complex goals. Finally you will learn how Kafka works with other tools like Hadoop, Storm, and so on.

                  You will learn everything you need to know to work with Apache Kafka in the right format, as well as how to leverage its power of handling hundreds of megabytes of messages per second from multiple clients.

                  Approach

                  The book will follow a step-by-step tutorial approach which will show the readers how to use Apache Kafka for messaging from scratch.

                  Who this book is for

                  Apache Kafka is for readers with software development experience, but no prior exposure to Apache Kafka or similar technologies is assumed. This book is also for enterprise application developers and big data enthusiasts who have worked with other publisher-subscriber based systems and now want to explore Apache Kafka as a futuristic scalable solution.

                  Code Download and Errata
                  Packt Anytime, Anywhere
                  Register Books
                  Print Upgrades
                  eBook Downloads
                  Video Support
                  Contact Us
                  Awards Voting Nominations Previous Winners
                  Judges Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software
                  Resources
                  Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software