Internamente, Kafka memorizza i dati come un log append-only su disco (organizzato in segmenti), utilizza tecniche di I/O efficienti e gestisce i metadati del cluster tramite ZooKeeper (storicamente) o KRaft (attualmente). Comprendere gli interni approfondisce la comprensione del comportamento e delle prestazioni di Kafka.
The commit log storage
Each partition is an append-only LOG stored on disk, split into SEGMENTS (files):
→ new events are APPENDED to the end (sequential writes → fast)
→ events are immutable once written; identified by OFFSET
→ old segments are deleted (retention) or compacted
→ an INDEX maps offsets to file positions (fast lookups)
→ the append-only log is the core of Kafka's design (durable, sequential, efficient)
