Upload
hedwig-arling
View
104
Download
2
Embed Size (px)
Citation preview
Syn
chro
nisa
tion
para
llele
r T
rans
aktio
nen
A
IFB
S
S20
01
1
4.2 Konzept der Transaktion 4.2 Konzept der Transaktion (1/4)
Eine Transaktion ist ein in sich geschlossener, sinnvoller und
korrekter Benutzerauftrag;
d.h. eine Folge von DB-Aktionen (DB-Operationen), die die DB
von einem konsistenten in einen wiederum konsistenten
(anderen) Zustand überführt.
Syn
chro
nisa
tion
para
llele
r T
rans
aktio
nen
A
IFB
S
S20
01
2
4.2 Konzept der Transaktion 4.2 Konzept der Transaktion (2/4)
Charakteristische Eigenschaften (ACID-Prinzip)
• Atomicity (Unteilbarkeit):Eine Transaktion wird entweder vollständig oder gar nicht ausgeführt. Bei Fehlern während der Abarbeitung muss jede bereits stattgefundene Aktion rückgängig gemacht werden.
• Consistency (Konsistenz): Eine Transaktion führt eine konsistente Datenbank wieder in einen konsistenten Zustand über. Während des Ablaufs der Transaktion werden möglicherweise inkonsistente Zwischenzustände durchlaufen.
• Isolation: Eine Transaktion läuft so ab, als wäre sie die einzige im System. Parallele Transaktionen dürfen einander nicht beeinflussen.
• Durability (Dauerhaftigkeit): Änderungen, die von einer erfolgreichen Transaktion durchgeführt wurden, überdauern jeden Fehlerfall.
Syn
chro
nisa
tion
para
llele
r T
rans
aktio
nen
A
IFB
S
S20
01
3
4.2 Konzept der Transaktion 4.2 Konzept der Transaktion (3/4)
Programmierer muss Anfang und Ende einer
Transaktion kennzeichnen.
BEGIN OF TRANSACTION (BOT)
. . . . . . .
END OF TRANSACTION (EOT)
Definieren einer Transaktion
Das DBMS kann nicht bestimmen, welche Aktionen eine
Transaktion bilden.
Syn
chro
nisa
tion
para
llele
r T
rans
aktio
nen
A
IFB
S
S20
01
4
4.2 Konzept der Transaktion 4.2 Konzept der Transaktion (4/4)
Korrektes Rücksetzen
Eine spezielle DBMS-Komponente sichert das korrekte Zurücksetzen
einer laufenden Transaktion im Fehlerfall (Unteilbarkeit)
Probleme beim Rücksetzen
Transaktionen, die Werte von zurückgesetzten Transaktionen
gelesen haben, müssen ebenfalls zurückgesetzt werden. (Bereits abgeschlossene Transaktionen können wegen der Dauerhaftigkeit
nicht mehr zurückgesetzt werden. Spezielle Kompensationstransaktionen
machen dann Änderungen rückgängig.)
Gefahr des fortgesetzten Rollbacks
(cascading rollback, Domino-Effekt)
Lösung:Lösung: Kein Zugriff auf geänderte Daten, bis
ändernde Transaktion abgeschlossen ist.