MVCC
Multi-Version Concurrency Control (MVCC) is a database concurrency control method that tracks multiple versions of data items to improve concurrent access. By allowing readers to access data without blocking writers, MVCC provides non-conflicting reads and reduces lock contention. It is widely used in relational databases and some key-value stores to support higher throughput and consistent reads across transactions.
How it works: When a transaction modifies data, a new version of the affected row is created
Cleanup and isolation: Versions that are no longer visible to any active transaction become candidates for
Applications and examples: PostgreSQL uses MVCC with tuple versions and transaction IDs; MySQL InnoDB implements MVCC