Transaction
Eine Transaktion ist eine Gruppe von Operationen, die als eine logische Einheit unter Einhaltung von ACID ausgeführt wird — alles oder nichts.
Zweck
Mehrere Operationen zu einer atomaren Einheit bündeln und Korrektheit bei Ausfällen und Nebenläufigkeit garantieren.
Mechanismus
BEGIN startet, Operationen laufen, COMMIT bestätigt oder ROLLBACK bricht ab. Atomarität garantiert das Undo-Log, Dauerhaftigkeit das Redo-Log/WAL, Isolation Locks oder MVCC. Verteilte Transaktionen nutzen 2PC/3PC oder das Saga-Muster.
Anwendungsfälle
- Banküberweisungen
- Bestellungen und Lagerabbuchung
- Relationale Multi-Tabellen-Updates
- Verteilte dienstübergreifende Operationen
Beispiele
- Eingabe
BEGIN; A→B 100; COMMITOutputAtomic transferAll or nothing
Häufige Fehler
- No explicit transaction causes partial commits
- Wrap related operations in a transaction
Verwandte Begriffe
ACID
ACID sind die vier Eigenschaften relationaler Transaktionen: Atomarität (Alles-oder-Nichts), Konsistenz (Constraints gewahrt), Isolation (Nebenläufigkeit ohne Störung), Dauerhaftigkeit (Persistenz nach Commit). GLOSSAR
Isolation Level
Isolationsstufen definieren die Sichtbarkeit zwischen nebenläufigen Transaktionen, von Read Uncommitted bis Serializable; höhere Stufen geben stärkere Konsistenz, aber geringere Nebenläufigkeit. GLOSSAR
Primary Key
Ein Primärschlüssel ist die Spalte oder Spaltenkombination, die jede Zeile einer Tabelle eindeutig identifiziert — nicht null und eindeutig; die Zeilenidentität. GLOSSAR