ACID-Eigenschaften
Das Von Pionieren der Transaktionsverarbeitung geprägte Akronym ACID steht für atomar, konsistent, isoliert und langlebig. Um ein vorhersagbares Verhalten sicherzustellen, müssen alle Transaktionen über diese grundlegenden Eigenschaften verfügen, wodurch die Rolle unternehmenskritischer Transaktionen als All-or-None-Vorschläge gestärkt wird.
Die folgende Liste enthält eine Definition und eine Beschreibung der einzelnen ACID-Eigenschaften:
-
Atomic
-
Eine Transaktion muss genau einmal ausgeführt werden und muss atomar sein– entweder ist die gesamte Arbeit erledigt oder keine. Vorgänge innerhalb einer Transaktion teilen sich in der Regel eine allgemeine Absicht und sind unabhängig. Wenn nur eine Teilmenge dieser Vorgänge ausgeführt wird, könnte das System die Gesamtabsicht der Transaktion gefährden. Die Atomarität beseitigt die Wahrscheinlichkeit, dass nur eine Teilmenge von Vorgängen verarbeitet wird.
-
Konsistent
-
Eine Transaktion muss die Konsistenz der Daten beibehalten und einen konsistenten Zustand der Daten in einen anderen konsistenten Zustand der Daten transformieren. Ein Großteil der Verantwortung für die Aufrechterhaltung der Konsistenz liegt beim Anwendungsentwickler.
-
Isoliert
-
Eine Transaktion muss eine Isolationseinheit sein. Dies bedeutet, dass sich gleichzeitige Transaktionen so verhalten sollten, als wäre jede Transaktion die einzige Transaktion, die im System ausgeführt wird. Da ein hoher Grad an Isolation die Anzahl gleichzeitiger Transaktionen einschränken kann, verringern einige Anwendungen die Isolationsstufe im Gegenzug für einen besseren Durchsatz. Weitere Informationen finden Sie unter Konfigurieren von Transaktionsisolationsstufen .
-
Langlebig
-
Eine Transaktion muss wiederherstellbar sein und daher dauerhaft sein. Wenn eine Transaktion committet, garantiert das System, dass die Updates auch dann beibehalten werden können, wenn der Computer unmittelbar nach dem Commit abstürzt. Durch die spezielle Protokollierung kann die Neustartprozedur des Systems nicht abgeschlossene Vorgänge ausführen, die für die Transaktion erforderlich sind, sodass die Transaktion dauerhaft ist.