Transaktion

Aus DBWiki
Wechseln zu: Navigation, Suche

Eine Transaktion symbolisiert eine Arbeitseinheit, die innerhalb eines Datenbankmanagementsystems (oder eines ähnlichen Systems) gegen eine Datenbank ausgeführt und unabhängig von anderen Transaktionen kohärent und zuverlässig behandelt wird. Eine Transaktion stellt in der Regel jede Änderung in einer Datenbank dar. Transaktionen in einer Datenbankumgebung haben zwei Hauptziele:

  1. Zuverlässige Arbeitseinheiten bereitzustellen, die eine korrekte Wiederherstellung nach Ausfällen ermöglichen und eine konsistente Datenbank auch im Falle eines Systemausfalls gewährleisten, wenn die Ausführung (vollständig oder teilweise) gestoppt wird und viele Operationen auf einer Datenbank unvollständig mit unklarem Status bleiben.
  1. Isolierung zwischen Programmen, die gleichzeitig auf eine Datenbank zugreifen. Wenn diese Isolierung nicht gegeben ist, sind die Ergebnisse der Programme möglicherweise fehlerhaft.


Eine Datenbanktransaktion muss per Definition atomar, konsistent, isoliert und dauerhaft sein. Datenbankpraktiker beziehen sich häufig auf diese Eigenschaften von Datenbanktransaktionen unter Verwendung des Akronyms ACID.


Transaktionen stellen einen "Alles-oder-nichts"-Vorschlag dar, der besagt, dass jede in einer Datenbank ausgeführte Arbeitseinheit entweder vollständig abgeschlossen sein muss oder keinerlei Wirkung hat. Darüber hinaus muss das System jede Transaktion von anderen Transaktionen isolieren, die Ergebnisse müssen mit den bestehenden Einschränkungen in der Datenbank übereinstimmen und Transaktionen, die erfolgreich abgeschlossen wurden, müssen in einen beständigen Datenspeicher geschrieben werden.