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.