An offset is a unique, sequential ID for each event within a partition — marking its position. Consumers track and commit offsets to know what they've consumed, enabling resuming, replay, and reliable processing.
What offsets are
OFFSET → the position/ID of an event within a PARTITION:
→ each partition is an ordered log; events get incrementing offsets (0, 1, 2, ...)
→ an offset uniquely identifies an event's position in its partition
→ events are RETAINED → the log keeps events (offsets remain valid for the retention period)
How consumers use offsets
→ a consumer reads events in order and tracks its CURRENT offset (where it has read to)
→ COMMITTING an offset → records "I've processed up to here" → on restart, resume from
the committed offset (don't reprocess everything)
→ consumers can SEEK to any offset → REPLAY old events, skip ahead, reprocess from a point
→ each consumer GROUP tracks its own offsets per partition (independent progress)
