Getting Started with Apache Kafka
This course will introduce you to Apache Kafka and provide a thorough tour of its architecture so you can start building your next enterprise system with it.
What you'll learn
What open source system does Netflix, Twitter, LinkedIn, Uber, and AirBnb have in common that enables them to process hundreds of billions of messages per day? Apache Kafka. In today's enterprises, working with large amounts of data is no longer limited to internet-scale companies - every IT professional must be prepared with solutions to capture, maintain, and move terabytes of data reliably and at blistering speeds. Apache Kafka was designed to address large-scale, data movement problems and has enabled thousands of companies large and small to achieve successes not otherwise achievable with existing messaging systems. In this course, Getting Started with Apache Kafka, you will get a thorough understanding of Apache Kafka's architecture and how it has adopted proven distributed systems design principles that enable it to scale and perform reliably. Then, you will breakdown this architecture into individual components and learn about each in great detail. Finally, you will use the components in action with common scenarios and walkthough how Apache Kafka solutions can be developed in Java. By the end of the course, you will have an understanding and appreciation for why Apache Kafka is taking the industry by storm but most importantly, you will come away with confidence and knowledge to build your next generation big data solutions with Apache Kafka.
Table of contents
- Introduction and Apache Kafka Setup Demo 4m
- Apache Kafka Topics in Detail 5m
- The Consumer Offset and Message Retention Policy 4m
- Demo: Starting Apache Kafka and Producing and Consuming Messages 7m
- Apache Kafka as a Distributed Commit Log 3m
- Apache Kafka Partitions in Detail 5m
- Distributed Partition Management in Apache Kafka 6m
- Achieving Reliability with Apache Kafka Replication 6m
- Demo: Fault-tolerance and Resiliency in Apache Kafka 8m
- Module 3 Summary 2m
- Introduction and Setting up an Apache Kafka Development Environment 5m
- Basics of Creating an Apache Kafka Producer 5m
- Creating and Preparing Apache Kafka Producer Records 4m
- Apache Kafka Producer Record Properties 3m
- The Process of Sending Messages, Part One 6m
- The Process of Sending Messages, Part Two 4m
- Message Buffering and Micro-batching 3m
- Message Delivery and Ordering Guarantees 5m
- Demo: Creating and Running an Apache Kafka Producer Application in Java 4m
- Advanced Topics and Module 4 Summary 2m
- Introduction and Apache Kafka Consumer Overview 2m
- Subscribing and Unsubscribing to Topics 2m
- Comparing Subscribe and Assign APIs 3m
- Single Consumer Subscriptions and Assignments 3m
- The Poll Loop 3m
- Demo: Simple Kafka Consumer 11m
- Walkthrough: Consumer Polling 3m
- Walkthrough: Message Processing 2m
- The Consumer OFfset in Detail 6m
- Offset Behavior and Management 6m
- CommitSync and CommitAsync for Manual Offset Management 3m
- When to Manager Your Own Offsets Altogether 3m
- Scaling out with Consumer Groups 5m
- Consumer Group Coordinator 3m
- Demo: Consumer Groups 6m
- Configuration and Advanced Topics 3m
- Summary 2m