Betriebliche Informationssysteme Prof. Dr. Michael Löwe

Slides:



Advertisements
Ähnliche Präsentationen
Kapitel 15 Verteilte Datenbanken
Advertisements

Transaktionsverwaltung Beispiel einer typischen Transaktion in einer Bankanwendung: 1.Lese den Kontostand von A in die Variable a: read(A,a); 2.Reduziere.
Wiederholung Betriebssystem bietet eine Abstraktion der Hardware an:
Folien 2-5, 7-8 © Prof. Dr. Manfred Rössle (FH Aalen)
Transaktionsverwaltung
Transaktionsverwaltung
1 Fehlerbehandlung (Recovery) 1.Lokaler Fehler in einer noch nicht festgeschriebenen (committed) Transaktion Wirkung muss zurückgesetzt werden R1-Recovery.
Transaktionsverwaltung Beispiel einer typischen Transaktion in einer Bankanwendung: 1.Lese den Kontostand von A in die Variable a: read(A,a); 2.Reduziere.
DVD und CD Datenträger im Vergleich
Konzeption und prototypische Implementierung eines zentralen Informationssystems für Systemmanagement Motivation Oft wird es schwierig, die benötigten.
1 Fehlerbehandlung (Recovery) 1.Lokaler Fehler in einer noch nicht festgeschriebenen (committed) Transaktion Wirkung muss zurückgesetzt werden R1-Recovery.
XINDICE The Apache XML Project Name: Jacqueline Langhorst
Gottfried Vossen 5. Auflage 2008 Datenmodelle, Datenbanksprachen und Datenbankmanagementsysteme Kapitel 22: Grundlagen der Crash Recovery.
Was ist ein kognitives System?
Transaktionen in verteilten Datenbanken
DbjFileManager Paul Fruntzek Michael Stanek. Überblick Unterste Ebene im Schichtenmodell Schnittstelle zum BS (Low-Level) Aufgabenbereich: Persistente.
Vorlesung 3: Verschiedenes Universität Bielefeld – Technische Fakultät AG Rechnernetze und verteilte Systeme Peter B. Ladkin
Access 2000 Datenbanken.
Datenbanken Einführung Merkmale dateiorientierte Datenverwaltung
Datenbanksysteme für FÜ WS 2004/2005 Transaktionen 1 Worzyk FH Anhalt Transaktionen und Parallelverarbeitung Eigenschaften von Transaktionen Konsistenz.
Datenbanksysteme für FÜ SS 2000 Seite Worzyk FH Anhalt Transaktionen und Parallelverarbeitung Eigenschaften von Transaktionen Konsistenz Isolation.
Kapitel 13: Mehrbenutzersynchronisation
1 Kapitel 12: Transaktionsverwaltung Oliver Vornberger Fachbereich Mathematik/Informatik Universität Osnabrück Osnabrück
1 Kapitel 12: Transaktionsverwaltung. 2 Transaktion Bündelung mehrerer Datenbankoperationen Mehrbenutzersynchronisation Recovery.
15.1 Synchronisation nebenläufiger Prozesse
Erhard Künzel für Info 9. Klasse: Digitale Schule Bayern© Erhard Künzel.
Recovery AIFB SS Recovery 5.1 Fehler im Datenbankbetrieb(1/10) (1)Transaktionsfehler (TF) (2)Systemfehler (SF) (3)Speicherfehler (SpF) Fehlerfallen.
RelationentheorieObjektorientierte Datenbanken AIFB SS Das ODMG-Objektmodell vs. relationales Modell (1/9) ODMG-Objektmodell Literal_type Atomic_literal.
ausdrucksschwächeres
Einige Begriffe zum Anfang.... Transaktionsprozedur: Folge primitiver Operationen als Einheit der Konsistenz und der Robustheit. Transaktion (TA): Ausführung.
Recovery AIFB SS (1/8) Sicherungspunkte (Checkpoints) (1/8) (1) Transaktions-Orientierte Sicherungspunkte Transaction-Oriented Checkpoint.
Ausführungsmodell Zustandsübergang einer Transaktion aus Nutzersicht:
Modellierung von Transaktionen Zur Formalisierung der ACID-Garantien muss Verhalten von Transaktionen modelliert werden. Folge aus der Forderung nach lokaler.
Synchronisation paralleler Transaktionen AIFB SS Konzept der Transaktion 4.2 Konzept der Transaktion (1/4) Eine Transaktion ist ein in sich geschlossener,
1 Vorlesung 3 Verschiedenes Peter B. Ladkin
Datenmodelle, Datenbanksprachen und Datenbankmanagementsysteme
Datenbanken und Datenmodellierung
WS 2012/13 Datenbanksysteme Mi 15:15 – 16:45 R Vorlesung #11 Transaktionsverwaltung.
WS 2004/2005 Datenbanken II - 5W Mi 17:00 – 18:30 G 3.18 Vorlesung #6 Fehlerbehandlung.
WS 2011/12 Datenbanksysteme Mi 15:15 – 16:45 R Vorlesung #10 Transaktionsverwaltung.
WS 2007/08 Datenbanksysteme Mi 17:00 – 18:30 R Vorlesung #12 Mehrbenutzersynchronisation.
WS 2004/2005 Datenbanken II - 5W Mi 17:00 – 18:30 G 3.18 Vorlesung #7 Mehrbenutzersynchronisation (Teil 1)
Allgemeines zu Datenbanken
UML UML mit SiSy® Vorgehensmodell Dokumentation HTML-Export
DI (FH) DI Roland J. Graf MSc (GIS) U N I V E R S I T Ä T S L E H R G A N G Geographical Information Science & Systems UNIGIS.
Transaktion Huang Zhenhao FU Shuai.
Vorlesung #12 Mehrbenutzersynchronisation
Datenbanksysteme Technische Grundlagen Transaktions-Konzept, Mehrbenutzer-Synchronisation, Fehlerbehandlung Prof. Dr. Manfred Gruber FH München.
Übung: Transaktionale Systeme
Vorlesung Automatisierungsprojekte Seite 6/1
Transaktionen Dr. Heidrun Bethge Datenbanken II.
Mehrbenutzerzugriff auf GIS-Daten
WS 2004/2005 Datenbanken II - 5W Mi 17:00 – 18:30 G 3.18 Vorlesung #3 Anfragebearbeitung (Teil 1)
Transaktionsverwaltung
Software Engineering Strukturierte Analyse
Technische Universität München Zentralübung Automotive Software Engineering – Übungsblatt 6.
Semantische Integritätsbedingungen  AIFB SS Überwachung von Integritätsbedingungen (1/3) Dem DBMS muß mitgeteilt werden, wann eine Integritätsbedingung.
Recovery    AIFB SS (1/6) Durchführung der Recovery-Maßnahmen(1/6) Transaktions-Fehler (TF) T1 T2 T3 Zeitt Transaktion T2 wird vom.
Prof. K. Gremminger Folie 1 Vorlesung Datenbanksysteme SS 2002 Abhängigkeiten zwischen Transaktionen (Fehlerklassen) u Lost-Update-Problem u Dirty Read.
Vs Verteilte Transaktionen Situation:Fragmentierung: Ein Datenbestand ist über mehrere Stationen verteilt (z.B. verteilte Datenbank, verteiltes Dateisystem,...)
6.3 Verteilte Transaktionen
Transaktionsverwaltung Beispiel einer typischen Transaktion in einer Bankanwendung: 1.Lese den Kontostand von A in die Variable a: read(A,a); 2.Reduziere.
Transaktionsverwaltung Beispiel einer typischen Transaktion in einer Bankanwendung: 1.Lese den Kontostand von A in die Variable a: read(A,a); 2.Reduziere.
SQL Basics Schulung –
6.3 Verteilte Transaktionen
Revisionssichere Informationsverarbeitung
Transaktionsabbruch, System Crash, Media Failure
Vorlesung #7 Fehlerbehandlung
Vorlesung #7 Fehlerbehandlung
Vorlesung #10 Fehlerbehandlung
 Präsentation transkript:

Betriebliche Informationssysteme Prof. Dr. Michael Löwe Transaktionen Betriebliche Informationssysteme Prof. Dr. Michael Löwe

Inhalt Begriffsbestimmung ACID-Eigenschaft Transaktionen auf 3 Ebenen Klassische Transaktionen Lange Transaktionen Ganz lange Transaktionen Resümee Transaktionen

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

Begriffsbestimmung Transaktion Arbeitsschritte Transition Zustand Bestätigen Verwerfen Definierter Anfang Arbeitsschritte Transition Schritt 1 Schritt 2 Schritt n Abschluss Zustand Anfangszustand Endzustand Transaktionen

Beispiele Textverarbeitung zwischen zwei Speichervorgängen Löschen einer Datei Laden einer HTML-Seite Erstellen und Versenden einer E-Mail Erstellung einer Rechnung/Lieferscheins/etc. Aktivitäten in einem Workflow Umstellung auf vierstellige Jahreszahlen Einführung des Euro Transaktionen

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

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

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

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 K1 K2 K3 1. K3 lesen (300) 2. K3 schreiben (250) 3. K2 lesen (500) 4. K2 schreiben (550) 5. Commit Transaktionen

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 K1 K2 K3 1. K3 lesen (300) 2. K3 schreiben (250) 3. K2 lesen (600) 4. K2 schreiben (650) 5. Commit Transaktionen

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 K1 K2 K3 1. K3 lesen (300) 2. K3 schreiben (250) 3. K2 lesen (500) 4. K2 schreiben (550) 5. Commit Transaktionen

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

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

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

(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

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

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

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