ACID

aus Wikipedia, der freien Enzyklopädie

(Weitergeleitet von ACID (Informatik))
Wechseln zu: Navigation, Suche
Hilfe:Begriffsklärung
Der Titel dieses Artikels ist mehrdeutig. Weitere Bedeutungen finden sich unter Acid.

ACID, deutsch auch AKID, ist ein Akronym in der Informatik. Es beschreibt erwünschte Eigenschaften von Transaktionen in Datenbankmanagementsystemen (DBMS) und verteilten Systemen. Es steht für atomicity, consistency, isolation und durability. Man spricht im Deutschen auch von AKID-Eigenschaften (Atomarität, Konsistenz, Isoliertheit und Dauerhaftigkeit). Sie gelten als Voraussetzung für die Verlässlichkeit der Systeme.

Inhaltsverzeichnis

[Bearbeiten] Eigenschaften

[Bearbeiten] Atomarität

Von einer atomaren Operation spricht man, wenn die Transaktion entweder ganz oder gar nicht ausgeführt wird: Das DBMS verhält sich gegenüber dem Benutzer so, als ob die Transaktion eine einzelne elementare Operation wäre, die nicht von anderen Operationen unterbrochen werden kann. Praktisch werden die einzelnen Datenbankanweisungen, aus der sich die Transaktion zusammensetzt, natürlich nacheinander ausgeführt – sobald sich jedoch herausstellt, dass die Transaktion nicht abgeschlossen werden kann, wird ein Rollback durchgeführt, also alles bisher Erledigte wieder rückgängig gemacht.

[Bearbeiten] Konsistenz

Konsistenz heißt, dass eine Transaktion nach Beendigung einen konsistenten Datenzustand hinterlässt, falls die Datenbank vor der Transaktion auch konsistent war. Nach Beendigung der Transaktion gelten die inhärenten und explizit definierten Integritätsbedingungen, insbesondere die Schlüssel- und Fremdschlüsselbedingungen.

[Bearbeiten] Isolation

Durch das Prinzip der Isolation wird verhindert, dass sich in Ausführung befindliche Transaktionen gegenseitig beeinflussen. Realisiert wird dies beispielsweise durch spezielle Sperrprotokolle oder Zeitstempelverfahren.

[Bearbeiten] Dauerhaftigkeit

Das Ergebnis einer Transaktion ist dauerhaft: Die Wirkung einer erfolgreich abgeschlossenen Transaktion bleibt dauerhaft (persistent) in der Datenbank erhalten, insbesondere auch nach Systemabstürzen. Die Dauerhaftigkeit kann zum Beispiel durch ein Commit-Protokoll verwirklicht werden.

[Bearbeiten] Siehe auch

Persönliche Werkzeuge