ACID (Atomicity, Consistency, Isolation, Durability) Definition

Was ist ACID (Atomicity, Consistency, Isolation, Durability)?

Steht für „Atomicity, Consistency, Isolation, Durability“. Das Akronym ACID definiert vier Eigenschaften, die eine Datenbank aufweisen muss, um die Datenintegrität zu gewährleisten. Diese Eigenschaften gelten insbesondere für Datenbankoperationen, die Daten in die Datenbank schreiben. Beispiele sind das Einfügen, Aktualisieren und Entfernen von Datensätzen.

Die vier ACID-Elemente werden im Folgenden beschrieben:

1. Atomizität

Atomizität garantiert, dass jede Transaktion ein „Alles-oder-Nichts“-Ereignis ist. Mit anderen Worten, sie ist erfolgreich oder scheitert vollständig. Atomare Operationen verhindern Datenverfälschungen, indem sie Teiltransaktionen ausschließen. Wenn ein Vorgang nicht abgeschlossen werden kann, wird er auf den vorherigen Zustand zurückgesetzt, als ob er nie stattgefunden hätte.

Einige Datenbankmanagementsysteme können eine bestimmte Konfiguration erfordern, um ACID-kompatibel zu sein. So erfüllt beispielsweise MySQL die ACID-Standards, allerdings nur bei Verwendung von Tabellen, die atomare Operationen unterstützen. InnoDB-Tabellen sind ACID-konform, da sie Transaktionen unterstützen, einschließlich COMMIT- und ROLLBACK-Anweisungen. MyISAM-Tabellen, die keine Transaktionen unterstützen, sind nicht ACID-kompatibel.

2. Konsistenz

Konsistenz ist die Gewissheit, dass nur gültige Daten in eine Datenbank geschrieben werden. Eine Datenbank akzeptiert zum Beispiel keine ungültigen Transaktionen oder unerkennbare Daten. Außerdem kann sie einen „Doublewrite-Buffer“ verwenden, in dem neue Transaktionen zwischengespeichert werden. Wenn die Datenbank oder das Hostsystem unerwartet abstürzt, können die Daten aus dem Puffer wiederhergestellt werden.

3. Isolation

Die Isolation stellt sicher, dass jede Transaktion einzeln behandelt wird. Einige Datenbanken lesen und schreiben Daten mehrmals pro Sekunde, was gleichzeitige Transaktionen erfordern kann. Selbst wenn die Transaktionen gleichzeitig stattfinden, können sie voneinander isoliert werden. Wenn beispielsweise eine Operation fehlschlägt, hat dies keine Auswirkungen auf andere, gleichzeitig stattfindende Transaktionen. Die Isolierung ist auch für die Sicherheit der Datenbank wichtig, da sie verhindert, dass die Daten einer Transaktion für eine andere sichtbar sind.

4. Dauerhaftigkeit

Die Dauerhaftigkeit garantiert, dass die Daten gespeichert werden, sobald eine Transaktion verarbeitet oder an die Datenbank „übergeben“ worden ist. Sie setzt voraus, dass die Daten in einen nichtflüchtigen Speicher geschrieben werden, damit die Transaktionen nicht verloren gehen, wenn eine Anwendung abstürzt oder der Strom ausfällt.

Während die Datenbanksoftware dazu beitragen kann, die Haltbarkeit der Datenbank zu gewährleisten, ist auch die Hardware wichtig. So kann beispielsweise eine RAID-Speicherkonfiguration für Redundanz sorgen, wenn ein Speichergerät ausfällt. Eine UPS-Batteriesicherung kann Datenverluste verhindern, indem sie die Stromversorgung aufrechterhält, wenn die primäre Stromquelle nicht verfügbar ist.


Hinweis:„Acid“ (Kleinbuchstaben) ist ein Webbrowser-Test, der die Browserunterstützung für bestimmte HTML-Tags und CSS-Regeln überprüft. Der aktuellste Test, Acid3, wurde 2008 von der Web Standards Project-Gruppe entwickelt.

Die Definition von ACID (Atomicity, Consistency, Isolation, Durability) auf dieser Seite ist eine Originaldefinition von SharTec.eu.
Das Ziel von SharTec ist es, Computerterminologie so zu erklären, dass sie leicht zu verstehen ist. Wir bemühen uns bei jeder von uns veröffentlichten Definition um Einfachheit und Genauigkeit. Wenn Sie Feedback zur ACID (Atomarität, Konsistenz, Isolation, Dauerhaftigkeit)-Definition haben oder einen neuen Fachbegriff vorschlagen möchten, kontaktieren Sie uns bitte.