MVCC (Multi-Version Concurrency Control) — это способ, которым PostgreSQL управляет одновременным доступом — вместо блокировки строк при чтении, он хранит несколько версий строк, так что каждая транзакция видит согласованный снимок данных. Основное преимущество: читатели не блокируют писателей, и писатели не блокируют читателей, обеспечивая высокий уровень параллелизма.
Основная идея: несколько версий строк
When a row is UPDATED, Postgres doesn't overwrite it — it creates a NEW version and
marks the old one obsolete. Different transactions can see different versions.
→ Each transaction sees a consistent SNAPSHOT of the database as of its start
(depending on isolation level), unaffected by others' uncommitted changes.
