Eine Transaktion ist eine einzelne logische Arbeitseinheit, die auf den Inhalt einer Datenbank zugreift und möglicherweise ändert. Transaktionen greifen mit Lese-und Schreibvorgängen auf Daten zu.
Um die Konsistenz in einer Datenbank zu erhalten, vor und nach der Transaktion werden bestimmte Eigenschaften gefolgt. Diese werden SAURE Eigenschaften genannt.

Atomicity
Damit meinen wir, dass entweder die gesamte Transaktion auf einmal stattfindet oder überhaupt nicht. Es gibt keinen Mittelweg., transaktionen treten nicht teilweise auf. Jede Transaktion wird als eine Einheit betrachtet und entweder bis zum Abschluss ausgeführt oder überhaupt nicht ausgeführt. Es beinhaltet die folgenden zwei Operationen.
– Abbruch: Wenn eine Transaktion abgebrochen wird, Änderungen an der Datenbank sind nicht sichtbar.
– Commit: Wenn eine Transaktion Commits, Änderungen sichtbar sind.
Atomarität ist auch bekannt als der ‚Alle-oder-nichts-Regel“.

Betrachten Sie die folgende Transaktion T bestehend aus T1 und T2: Übertragung von 100 von Konto X auf Konto Y.,

Wenn die Transaktion nach Abschluss von T1, jedoch vor Abschluss von T2 fehlschlägt.(sagen wir, nach write(X), aber vor write (Y)) wurde der Betrag von X abgezogen, aber nicht zu Y. Dies führt zu einem inkonsistenten Datenbankstatus. Daher muss die Transaktion vollständig ausgeführt werden, um die Richtigkeit des Datenbankstatus sicherzustellen.

Konsistenz
Dies bedeutet, dass Integritätsbeschränkungen beibehalten werden müssen, damit die Datenbank vor und nach der Transaktion konsistent ist. Es bezieht sich auf die Richtigkeit einer Datenbank., In Bezug auf das obige Beispiel muss
Der Gesamtbetrag vor und nach der Transaktion beibehalten werden.
Gesamt vor T auftritt = 500 + 200 = 700.
Gesamt nach T auftritt = 400 + 300 = 700.
Daher ist Datenbank konsistent. Inkonsistenz tritt auf, wenn T1 abgeschlossen ist, T2 jedoch fehlschlägt. Als Ergebnis ist T unvollständig.

Isolation
Diese Eigenschaft stellt sicher, dass mehrere Transaktionen gleichzeitig auftreten können, ohne dass der Datenbankstatus inkonsistent ist. Transaktionen erfolgen unabhängig und ohne Störung., Änderungen, die in einer bestimmten Transaktion auftreten, sind für keine andere Transaktion sichtbar, bis diese bestimmte Änderung in dieser Transaktion in den Speicher geschrieben oder festgeschrieben wurde. Diese Eigenschaft stellt sicher, dass die gleichzeitige Ausführung von Transaktionen zu einem Zustand führt, der einem Zustand entspricht, in dem diese in einer bestimmten Reihenfolge seriell ausgeführt wurden.
Sei X= 500, Y = 500.
Betrachten Sie zwei Transaktionen T und T“.

Angenommen, T ausgeführt wurde, bis Read (Y) und dann T – “ beginnt., Infolgedessen findet eine Verschachtelung von Operationen statt, aufgrund derer T „den korrekten Wert von X, aber den falschen Wert von Y und die von
T berechnete Summe liest“: (X+Y = 50, 000+500=50, 500)
ist daher nicht konsistent mit der Summe am Ende der Transaktion:
T: (X+Y = 50, 000 + 450 = 50, 450).
Dies führt zu Datenbank-Inkonsistenz, aufgrund eines Verlustes von 50 Einheiten. Daher müssen Transaktionen isoliert stattfinden und Änderungen sollten erst sichtbar sein, nachdem sie am Hauptspeicher vorgenommen wurden.,

Haltbarkeit:
Diese Eigenschaft stellt sicher, dass nach Abschluss der Ausführung der Transaktion die Aktualisierungen und Änderungen an der Datenbank gespeichert und auf die Festplatte geschrieben werden und auch bei einem Systemfehler bestehen bleiben. Diese Updates werden nun dauerhaft und werden im nichtflüchtigen Speicher gespeichert. Die Auswirkungen der Transaktion gehen somit nie verloren.,

Die ACID-Eigenschaften bieten insgesamt einen Mechanismus, um die Korrektheit und Konsistenz einer Datenbank so zu gewährleisten, dass jede Transaktion eine Gruppe von Operationen ist, die als einzelne Einheit fungiert, konsistente Ergebnisse liefert, isoliert von anderen Operationen handelt und Updates, die sie durchführt, dauerhaft gespeichert werden.

Dieser Artikel wird von Avneet Kaur beigesteuert. Wenn Sie GeeksforGeeks mögen und einen Beitrag leisten möchten, können Sie auch einen Artikel mit schreiben contribute.geeksforgeeks.org oder mailen Sie Ihren Artikel an [email protected]., Sehen Sie sich Ihren Artikel auf der Hauptseite von GeeksforGeeks an und helfen Sie anderen Geeks.