Two-Phase Locking
Two-Phase Locking (2PL) teilt eine Transaktion in eine Sperr- und eine Entsperrphase, garantiert Serialisierbarkeit, birgt aber Deadlock-Risiko.
Zweck
Das klassische serialisierbare Nebenläufigkeitskontroll-Protokoll, seine Deadlock-Gefahr und seine Varianten verstehen.
Mechanismus
Phase eins (wachsend) erwirbt nur Locks; Phase zwei (schrumpfend) gibt nur frei. Strict 2PL (S2PL) gibt Locks erst am Transaktionsende frei und vermeidet Kaskaden-Rollbacks. Strong 2PL (SS2PL) hält auch Leselocks bis zum Ende und garantiert strenge Serialisierbarkeit.
Anwendungsfälle
- Design der Nebenläufigkeitskontrolle
- Implementierung von Serialisierbarkeit
- Deadlock-Analyse