Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Malger Radatz Geändert vor über 10 Jahren
1
Betriebliche Informationssysteme Prof. Dr. Michael Löwe
Transaktionen Betriebliche Informationssysteme Prof. Dr. Michael Löwe
2
Inhalt Begriffsbestimmung ACID-Eigenschaft Transaktionen auf 3 Ebenen
Klassische Transaktionen Lange Transaktionen Ganz lange Transaktionen Resümee Transaktionen
3
Begriffsbestimmung Transaktion = „großes Geld- oder Bankgeschäft“
Geldbewegungen auf „vielen“ Konten „Alle“ Konten vom Anfangs- zum Endzustand Transaktion als Einheit (Sicht von außen) Anfangszustand aller Konten Endzustand aller Konten Transaktion als Struktur (Sicht von innen) Reihe von Geldbewegungen auf den Einzelkonten Transaktionen
4
Begriffsbestimmung Transaktion Arbeitsschritte Transition Zustand
Bestätigen Verwerfen Definierter Anfang Arbeitsschritte Transition Schritt 1 Schritt 2 Schritt n Abschluss Zustand Anfangszustand Endzustand Transaktionen
5
Beispiele Textverarbeitung zwischen zwei Speichervorgängen
Löschen einer Datei Laden einer HTML-Seite Erstellen und Versenden einer Erstellung einer Rechnung/Lieferscheins/etc. Aktivitäten in einem Workflow Umstellung auf vierstellige Jahreszahlen Einführung des Euro Transaktionen
6
ACID-Eigenschaften (DAIC) A = Atomicity(2) C = Consistence(4)
ganz = bestätigen = commit oder gar nicht = verwerfen = roll back C = Consistence(4) Legale Zustände werden in legale Zustände überführt I = Isolation(3) Zwischenergebnisse sind außerhalb nicht sichtbar D = Durability(1) Die Ergebnisse (Zustandsänderungen) sind dauerhaft Transaktionen
7
Durability (Fast) alle Daten sind dauerhaft gespeichert
Datenbank, File, CD-ROM, DVD ... Explizites Holen der Daten zur Verarbeitung Operation „Lesen“ oder „Read“ Explizites Speichern der Daten nach der Verarbeitung Operation „Schreiben“ oder „Write“ Transaktionen
8
Atomicity T: 100 DM von K1 auf K2 K1 K2 K1 K2 200 100 500 600
1. K1 lesen (200) 2. K1 schreiben (100) 3. K2 lesen (500) 4. K2 schreiben (600) 5. Commit K1 K2 Bestätigung 200 100 500 ERR 1. K1 lesen (200) 2. K1 schreiben (100) 3. K2 lesen (500) 4. K2 schreiben (600) 5. Auto Roll Back K1 K2 Erkannter Fehler 200 100 500 600 1. K1 lesen (200) 2. K1 schreiben (100) 3. K2 lesen (500) 4. K2 schreiben (600) 5. Roll Back Abbruch 200 100 500 1. K1 lesen (200) 2. K1 schreiben (100) 3. K2 lesen (500) 4. System(teil)absturz 5. Auto Roll Back Systemausfall Transaktionen
9
Atomicity (Lost Update)
T1: 100 DM von K1 auf K2 T2: 50 DM von K3 auf K2 1. K1 lesen (200) 2. K1 schreiben (100) 3. K2 lesen (500) 4. K2 schreiben (600) 5. Commit 200 100 500 600 550 300 250 K K K3 1. K3 lesen (300) 2. K3 schreiben (250) 3. K2 lesen (500) 4. K2 schreiben (550) 5. Commit Transaktionen
10
Isolation (Dirty Read)
T1: 100 DM von K1 auf K2 T2: 50 DM von K3 auf K2 1. K1 lesen (200) 2. K1 schreiben (100) 3. K2 lesen (500) 4. K2 schreiben (600) 5. Roll back 200 100 500 600 650 300 250 K K K3 1. K3 lesen (300) 2. K3 schreiben (250) 3. K2 lesen (600) 4. K2 schreiben (650) 5. Commit Transaktionen
11
Isolation (Unrepeatable Read)
T1: K2 + K3 zu K1 T2: 50 DM von K3 auf K2 1. K1 lesen (200) 2. K2 lesen (500) 3. K3 lesen (250) 4. K1 schreiben (950) 5. Commit 200 950 500 550 300 250 K K K3 1. K3 lesen (300) 2. K3 schreiben (250) 3. K2 lesen (500) 4. K2 schreiben (550) 5. Commit Transaktionen
12
Consistence Transaktion Transition Arbeitsschritte Zustand Summe aller
Schritt n Abschluss Definierter Anfang Arbeitsschritte (3a) Bestätigen (3b) Verwerfen (1) Bestätigung versuchen (2) Check Constraints (a) o. k. (b) nicht o. k. Summe aller Konten ist 0 Transaktionen
13
Transaktionen auf 3 Ebenen
Workflow Ganz lange Transaktion (> ein paar Tage) Transaktion = Prozess/Workflow Arbeitsschritt = Aktivität Aktivität Lange Transaktion (< ein paar Tage) Transaktion = Aktivität Arbeitsschritt = Geschäftsfunktion Geschäftsfunktion Transaktion (< 3 Sekunden) Transaktion = Geschäftsfunktion Arbeitsschritt = Jede Aktualisierung der Speichermedien Transaktionen
14
Transaktionen auf 3 Ebenen
Ganz lange Transaktion (Workflow) Lange Transaktion (Aktivität) Beginn Abschluss Commit, Roll Back Transaktion (Funktion) Commit, Roll Back DB-Update Commit, Roll Back Transaktionen
15
(Datenbank- bzw. TM-)Transaktion
Begin Work, Commit und Roll Back des DBMS Transaktion ist DBMS-Objekt Dauer < 3 Sekunden (Präsuppositionen des DBMS) Vollautoamtisch; keine Unterbrechung durch Dialog Durability durch DBMS Atomicity durch Serialisierung der Transaktionen Automatisches Roll Back bei Absturz Isolation durch DBMS-Sperrmechanismen Consistence durch DBMS-Mittel Transaktionen
16
Lange Transaktionen Begin Work, Commit und Roll Back als Transaktionen
Transaktion ist Systemobjekt Dauer: bis zu mehreren Tagen Ständige Unterbrechung durch Benutzerdialoge Durability durch Durability der Geschäftsfunktionen Atomicity „handgemacht“ Absturz kein Problem Isolation durch Logische Sperren Consistence durch Consistence der Geschäftsfunktionen Transaktionen
17
Ganz lange Transaktionen
Begin Work, Commit, Roll Back kaum als Transaktionen Transaktion ist das Workflow-Objekt Dauer: mehrere Tage oder Wochen Ständige Unterbrechung durch Akteur-Wechsel Durability durch Durability der Geschäftsfunktionen Atomicity „handgemacht“ Absturzprobleme, wenn Commit und Roll Back keine Transakt. Isolation: ganz schwierig durch ganz lange Sperren Consistence durch Consistence der Geschäftsfunktionen Transaktionen
18
Resümee Transaktion ist das Konzept von Geschäftsanwendungen
ACID garantiert: Bestand der Ergebnisse von Handlungen der Anwender Fertigwerden mit (Teil-)Systemausfällen und Benutzerabbruch Synchronisation im Mehrbenutzerbetrieb Consistence des Datenmodells Die drei Transaktionsebenen Workflow: kaum vorhanden, schwer zu realisieren Aktivität: kaum vorhanden, Realisierung nötig Geschäftsfunktion: überall vorhanden, Realisierung durch DBMS oder TP, schwierig in verteilten Systemen Transaktionen
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.