2 Apache Kafka Fundamentals

Apache Kafka & Strimzi · 3:57

Listen on 93

Lyrics

[Verse 1]
In the stream of data flowing fast and free
Kafka stands as our distributed key
Brokers form a cluster, topics hold the data
Partitions split the load, replicas make it greater
Messages flow in order, offset tracks the way
Producers write the future, consumers read today

[Chorus]
B-T-P-R, brokers topics partitions replicas
P-C-G, producers consumers groups in harmony
Kafka keeps the data streaming, never losing what we need
Distributed architecture, built for scale and speed

[Verse 2]
ZooKeeper used to coordinate the dance
Managing the metadata, giving brokers their chance
But KRaft mode is rising, Kafka's own consensus
No more external keeper, internal and tremendous
Controller election happens within the cluster now
Self-managing architecture, Kafka shows us how

[Chorus]
B-T-P-R, brokers topics partitions replicas
P-C-G, producers consumers groups in harmony
Kafka keeps the data streaming, never losing what we need
Distributed architecture, built for scale and speed

[Bridge]
Log compaction keeps the latest state
Retention policies decide each message fate
Segments store the data, rolling when they're full
Connect moves the data, Streams make it beautiful
Schema Registry validates, ensuring data's clean
Trading throughput latency durability in between

[Verse 3]
Consumer groups balance the partition load
Each partition owned by one, that's the sacred code
Rebalancing happens when consumers join or leave
Offset commits track progress, recovery they achieve
Acknowledgments control the durability we gain
At-least-once or exactly-once, managing the pain

[Chorus]
B-T-P-R, brokers topics partitions replicas
P-C-G, producers consumers groups in harmony
Kafka keeps the data streaming, never losing what we need
Distributed architecture, built for scale and speed

[Outro]
From produce to consume, the data flows complete
Kafka fundamentals make our streaming sweet
Built for scale and speed

← 2 KRaft — The ZooKeeper Replacement | 4 Client-Side Implications →