MVCC

Problem

Leser und Autoren, die sich ständig gegenseitig blockieren, können die Gleichzeitigkeit stark reduzieren. Kann ein Leser eine stabile Ansicht sehen, während eine andere Transaktion die Daten aktualisiert?

Lösung — MVCC

MVCC steht für Multiversion Concurrency Control. Die Datenbank verwaltet mehrere Versionen von Daten.
Alte Version ← Leser
Neue Version ← Schreiber
Transaktionen können entsprechende Versionen sehen, ohne dass jedes Lesen jedes Schreiben blockiert.
Kerngedanke: MVCC verwendet Datenversionen, um Transaktionsansichten mit größerer Parallelität bereitzustellen.