Most services store current state by updating rows in place. Event sourcing stores every change as an immutable event and derives current state by replaying those events.
Instead of storing a bank balance directly, the system stores events like money deposited, money withdrawn, and fee charged. The balance is computed from that event log.
This chapter covers append-only logs, replay, snapshots, projections, eventual consistency, and when audit and replay benefits justify the added complexity.