Useful Links
Computer Science
Stream Processing
Streaming Data Processing with Apache Kafka and KSQL
1. Introduction to Stream Processing
2. Fundamentals of Apache Kafka
3. Introduction to ksqlDB
4. Setting Up the Environment
5. ksqlDB Data Definition Language (DDL)
6. Querying and Transforming Data
7. Aggregations and Windowing
8. Joining Streams and Tables
9. Advanced ksqlDB Features
10. Building Real-Time Applications
11. Operations and Production Considerations
Fundamentals of Apache Kafka
Core Concepts
Events and Messages
Structure of a Kafka Message
Message Keys and Values
Message Headers
Message Timestamps
Topics and Partitions
Definition of a Topic
Partitioning Strategy
Partition Assignment
Partition Ordering Guarantees
Producers and Consumers
Producer Responsibilities
Consumer Responsibilities
Producer Acknowledgments
Consumer Offsets
Producer Batching
Consumer Polling
Brokers and Clusters
Role of a Broker
Cluster Topology
Broker Discovery
Cluster Membership
Offsets
Offset Management
Committed vs. Uncommitted Offsets
Offset Reset Strategies
Consumer Groups
Group Coordination
Load Balancing
Rebalancing Events
Consumer Group Protocol
Log-Structured Storage
Log Segments
Retention Policies
Compaction
Index Files
Kafka Architecture
Role of ZooKeeper and KRaft
Cluster Metadata Management
Controller Election
Transition to KRaft
KRaft Benefits and Limitations
Replication and Fault Tolerance
Replication Factor
Data Durability
Consistency Guarantees
Leader and Follower Replicas
Leader Election
Follower Synchronization
Replica Lag Monitoring
In-Sync Replicas (ISR)
Definition of ISR
Impact on Availability
ISR Management
Kafka Ecosystem Components
Kafka Connect for Data Integration
Source Connectors
Sink Connectors
Connector Configuration
Connector Management
Kafka Streams for Client-Side Processing
Stream Processing API
Topology Definition
State Stores
Kafka REST Proxy
RESTful Access to Kafka
Use Cases for REST Proxy
API Endpoints
Schema Registry
Schema Storage
Schema Validation
Compatibility Checks
Schema Evolution
Previous
1. Introduction to Stream Processing
Go to top
Next
3. Introduction to ksqlDB