Weltbild des Lehrgebietes Informationssysteme. Vorlesung. Transaktionssysteme. Theo Härder SS 2007

Ähnliche Dokumente
Datenbanken und Informationssysteme. Datenbanken und Informationssysteme

Datenbanken und Informationssysteme

Transaktionskonzept Eine Transaktion ist eine Folge von Operationen mit folgenden ACID Eigenschaften: Atomicity: Es werden alle Operationen oder gar k

Datenintegrität und Transaktionskonzept

Middleware für Verteilte Informationssysteme

1. Einführung Transaktionsverwaltung

Transaktionsverwaltung

Masterkurs Verteilte betriebliche Informationssysteme

Literaturliste zur Vorlesung EbIS-3: Architekturen von Datenbanksystemen und von datenbankbasierten Anwendungssystemen SS 2005

Realisierung von Datenbanksystemen

Inhaltsverzeichnis. Inhaltsverzeichnis

Literaturliste zur Vorlesung EbIS-3: Architekturen von Datenbanksystemen und von datenbankbasierten Anwendungssystemen SS 2007

Datenbank- Verwaltungssysteme

3.6 Transaktionsverwaltung

1. Einführung, Problemstellung und Überblick Rechnernetze

SS Prof. Hans-Jörg Schek Torsten Grabs und das OHO-Team. Vertiefung Objektverwaltung höherer Ordnung (OHO) Anwendung IS-Infrastruktur und SAP

Datenbanksysteme Technische Grundlagen Transaktions-Konzept, Mehrbenutzer-Synchronisation, Fehlerbehandlung

Einsatz und Realisierung von Datenbanken. Prof. Alfons Kemper Lehrstuhl für Informatik III: Datenbanksysteme

8. Transaktionsverarbeitung. Architektur von Datenbanksystemen I

Daten- und Transaktionskontrolle mit SQL DCL, TCL

Einsatz und Realisierung von Datenbanken. Prof. Alfons Kemper Lehrstuhl für Informatik III: Datenbanksysteme

Kapitel 1: Einführung

Datenbanken Grundlagen und Design

6.3 Verteilte Transaktionen

1. Integritätsbedingungen und Trigger

Datenbanken 1. Sommersemester Übung 8

Datenbanken und Informationssysteme

Datenbanksysteme I. Lehrveranstaltungen zu Datenbanken (SS 07) DBS 2 (2+1) DBS2 IDBS2. Datenschutz und Datensicherheit. Data-Warehouse- Praktikum

Datenbanken 1. Sommersemester Übung 8

Informationssysteme Übersicht Sommersemester 2017

Mächtigkeit von 2PL. Geben Sie einen Schedule S an, der. konfliktserialisierbar, jedoch nicht bei Anwendung von 2PL entstehbar. ist.

Fragenkatalog zum Kurs 1666 (Datenbanken in Rechnernetzen) Kurstext von SS 96

Datenmodellierung VU Einführung SS 2016

6. Verteilte Transaktionsverwaltung Einführung Synchronisation

9.3 Fehlerbehandlung

Inhalt: Wiederholung, Transaktionsbegriff. Es gibt verschiedene Datenmodelle und sie realisierende DBS

Darunter versteht man die Anmeldung eines Benutzers beim System unter Angabe einer Benutzererkennung.

Sommersemester Vorlesung: Dr. Matthias Schubert

Kapitel 2 Transaktionsverwaltung

Einsatz von Applikationsservern. Untersucht am Beispiel des Sybase Enterprise Application Server

9. Transaktionsverwaltung 9.3. Fehlerbehandlung Seite 1

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Dr. Thomas Neumann

Transaktionen und Synchronisation konkurrierender Zugriffe

8. Datenkontrolle. Klassifikation von Integritätsbedingungen Integritätsbedingungen in SQL Integritätsregeln / Trigger

Lernziele (1) Lernziele (2) Einführung in Datenbanksysteme. 0. Überblick 2

Kommunikation und Datenhaltung

Theo Härder Erhard Rahm. Konzepte und Techniken der Implementierung. Zweite, überarbeitete Auflage. Mit 217 Abbildungen und 14 Tabellen

Beispielszenarien. 12. Transaktionen. ACID-Eigenschaften. Transaktion

Transaktionen: Wiederholung und Vertiefung

Kapitel 3 Synchronisation

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

Datenbanken Konsistenz und Mehrnutzerbetrieb III

Fehlerbehandlung und Recovery

Datenbanken Datenbanken 1 Belegnummer Belegnummer

Grundlagen von Datenbanken. Referentielle Aktionen, Sichten, Serialisierbarkeit und Locking

Prof. Dr. Th. Letschert CS5001. Verteilte Systeme. Master of Science (Informatik) - Einleitung - Th Letschert FH Gießen-Friedberg

Software-Engineering und Datenbanken

Teil II: Architektur und Entwicklung (verteilter) Informationssysteme, Information Retrieval

Prüfungsberatungs-Stunde Datenbanksysteme 1 (Dbs1)

Kapitel 12 Integrität der Datenbank

Abschluss Einblick und Ausblick

Synchronisation in Datenbanksystemen in a nutshell

10. Übungsblatt. Für die Übung am Donnerstag, 15. Januar 2009, von 15:30 bis 17:00 Uhr in 13/222.

Datenbank- Implementierungstechniken

Übungen zur Vorlesung. Datenbanken I

Verteiltes Sperren Verteilte Recovery

Mehrbenutzersynchronisation

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Dr. Thomas Neumann

Mehrrechner-Datenbanksysteme (Verteilte und Parallele DBS)

Fehlerbehandlung (Recovery)

Logging und Recovery 0. Einführung - Fehlermodell - Recovery-Arten

P2P DATENBANKEN. Anwendungen 1 WS 2009/2010. Julissa Cusi Juarez. Department Informatik

Datenmodellierung im Zeitalter agiler Softwareentwicklung

Enterprise JavaBeans Überblick

Recovery. Prof. Dr. T. Kudraß 1

Data Warehousing. Sommersemester Ulf Leser Wissensmanagement in der Bioinformatik

Datenbanksysteme II SS Übungsblatt 9: Wiederholung

Seminar Business Process Management und Workflow-Technologie: Grundlagen, Produkte, Forschung

KAPITEL 6 TRANSAKTIONSVERWALTUNG UND RECOVERY

8.4 Überblick und Vergleich weiterer ERP-Systeme. G Oracle Applications 11 G PeopleSoft 7 G J.D. Edwards One World G BaanERP

Atomare Commit-Protokolle. Grundlagen von Datenbanken - SS Prof. Dr. Stefan Böttcher Atomare Commit-Protokolle Folie 1

Kapitel 8: Transaktionen

Andreas Heuer Gunter Saake Kai-Uwe Sattler. Datenbanken. kompakt

Beschaffung vom Informationssystemen Datenorganisation Kommunikation

Inhaltsverzeichnis. Daniel Liebhart, Guido Schmutz, Marcel Lattmann, Markus Heinisch, Michael Könings, Mischa Kölliker, Perry Pakull, Peter Welkenbach

6. Serialisierbarkeit

P.A. Bernstein, V. Hadzilacos, N. Goodman

SS 2011 IBB4C Datenmanagement Fr 15:15 16:45 R Vorlesung #1

Datenbanksysteme (5 LP) Softwaretechnik (5 LP) Kommunikationssysteme (5 LP) Automaten und Sprachen. Diskrete Strukturen (5 LP)

Fehlerbehandlung (Recov

Kap SAP R/3 Dialogprogrammierung

XML in der Oracle Datenbank

Koordination des Mehrbenutzerbetriebs 9. Koordination des Mehrbenutzerbetriebs

Konfliktgraph. Satz und Definition

SS 2010 IBB4C Datenmanagement Fr 15:15 16:45 R Vorlesung #1. Datenmanagement

Fehlerklassifikation 1. Lokaler Fehler in einer noch nicht festgeschriebenen. Wirkung muss zurückgesetzt werden R1-Recovery

Teil I Einführung & Grundlagen. 1.1 Was ist eine Transaktion?

Kapitel 3 Teil 1 Synchronisation / Korrektheit

mathematik und informatik

Transkript:

Prof. Dr.-Ing. Dr. h. c. Theo Härder Universität Kaiserslautern Fachbereich Informatik haerder@informatik.uni-kl.de http://www.haerder.de/ Vorlesung: Mi., 10.00-11.30 Uhr, 42-110 Beginn: Mi., 18. 04. 2007 Vorlesung Transaktionssysteme SS 2007 Theo Härder TAS, SS07, T. Härder 0-1 Weltbild des Lehrgebietes Informationssysteme TAS, SS07, T. Härder 0-2 CWM Sybase Business Intelligence Data Mining Data Warehouse DB2-Viper Oracle 11i SQL:1999 Universal Storage Adabas Rational Rose Visual Basic R3 XML-DBS Adaptivität und Verläßlichkeit Tamino Universal Access.NET EAI OLAP Informix IBM DB2 ERM UML CPM XML-SCHEMA SQLX Modellierung von Daten und Geschäftsprozessen Technische und betriebliche Informationssysteme Workflow-Management Enterprise JavaBeans Encina Web-Engineering DCOM J2EE OMG Transaktionssysteme TP-Monitore CICS Tuxedo CORBA OLE WebSphere JDBC DataJoiner Web- und DB-Caching Objekt-relationale DB-Erweiterungstechnologie Document Object Model Information Retrieval Content Mgmt Java e-business e-*** Web Services Web Content Mgmt Systeme OpenDoc DB-Middleware Standards OBDC Xopen/DCF Data Streams Business Objects Information Integration Federation Placement Transformation DataLinks Gateways SQLJ

Ziele Übersicht (vorl.) Vermittlung von vertieften Kenntnissen zu allen Entwicklungsund Einsatzaspekten von Transaktionssystemen: - Aufbau von Transaktions- und Client/Server-Systemen - Verständnis von Transaktionsmodellen und ihren Variationen sowie ihre - Nutzung in heterogenen Systemen, bei Workflows und in Web-Anwendungen - Bewertung der zugehörigen Realisierungskonzepte Die Inhalte der Vorlesung werden von einigen Anforderungen, die heute an einen "Softworker" gestellt werden, bestimmt. Das folgende Kenntnisprofil kann als Ideal für einen modernen Softworker dienen. Er - kennt die XY-Maschine - kann mindestens mit zwei Betriebssystemen umgehen und hat Grundkenntnisse bei Netzwerken - beherrscht eine Assembler- und eine höhere Programmiersprache - ist vertraut mit einem Datenmodell und der zugehörigen DB-Sprache (z. B. SQL:1999 als relationaler Standard) - kann Datenbanken strukturieren und verwalten - kann einen TP-Monitor benutzen - kann Transaktionssystem-Anwendungen entwickeln - beherrscht eine Entwurfsmethodik und kann die entsprechenden Entwurfswerkzeuge bedienen - beherrscht eine Testmethodik und kann die entsprechenden Testwerkzeuge anwenden - ist vertraut mit einer formalen Spezifikationssprache - kann die Anforderungen mit den Anwendern absprechen und - ist in der Lage, ein DV-Projekt zu leiten. (erweitert nach H. Sneed). 0. Grundlagen (Wiederholung) - Transaktionskonzept (DBAW) - Wichtigste Eigenschaften/Realisierungskonzepte von ACID 1. Architekturen von TA-Systemen - Ziel: Ableitung von Schichtenmodellen - Schichtenmodell eines zentralisierten TA-Systems - Verteilte Transaktionen unter Kontrolle eines TP-Monitors - Kontrolle verteilter Transaktionen durch VDBS oder durch Middleware - Web als TA-System - Standardisierung der Leistungsbewertung 2. Client/Server-Systeme - Anwendungsentwicklung allgemeine Probleme - Sicht des Endbenutzers - Entwurfsaufgaben - Client/Server-Modell, zwei-und dreistufige C/S-Architektur - Effiziente Realisierung von Servern - TP-Monitor Prinzipien und Einsatz - Aufbau des DB-Servers (Drei-Schichten-Modell) - TA-Verarbeitung in offenen Systemen - Optimierte Protokolle für 2PC - Zusammenfassung Vielfalt an Bezeichnungen TAS, SS07, T. Härder 0-3 TAS, SS07, T. Härder 0-4

Übersicht (2) Übersicht (3) 3. Transaktionsmodelle - Kontrollbereiche - Beschreibung von Transaktionsmodellen - Gekettete Transaktionen - Prinzipien der Schachtelung offen, geschlossen - Geschlossen geschachtelte Transaktionen Eigenschaften - Vertiefung Sperrprotokolle - Offen geschachtelte Transaktionen Eigenschaften - Mehrebenen-Transaktionen, Sagas - Komplexe Transaktionsmodelle Erkennung von Abhängigkeiten 4. TA-Modelle für heterogene Systeme, Workflows und Web - Heterogene TA-Systeme Autonomie vs. Transparenz Probleme: Serialisierbarkeit, Atomarität, Deadlocks - TA-Verwaltung in heterogenen Systemen Korrektheitsbedingungen bei Mehrebenen-TA 5. Transaktionale Kooperationsmodelle - Anwendungen und Anforderungen - Benutzerdefinierte Korrektheit (Cooperative Transaction Hierarchies) - Entwurfstransaktionen (CONCORD) 5. TP-Monitore - TP-Monitor-Architektur - DB-Server vs. TP-Monitore - (T)RPC - Peer-to-Peer Messaging - Queued Transaction Processing - Weitere TP-Monitor-Funktionen (Lastbalancierung, Authentifikation und Autorisierung, Restart-Verarbeitung) 6. Systembeispiele...... Globale Serialisierbarkeit und globale Atomarität - Daten- und Funktionsintegration - Transaktionale Workflows und ConTracts - Geschäftstransaktionen und Web Services Elektronischer Handel, Geschäftsmodelle Atomarität bei Geschäftstransaktionen TAS, SS07, T. Härder 0-5 TAS, SS07, T. Härder 0-6

LITERATURLISTE Aussagen zu wesentlichen Inhalten der Vorlesung in: Gray, J., Reuter, A.: Transaction Processing Concepts and Techniques, Morgan Kaufmann Publishers, Inc., San Mateo, CA., 1998 (5th printing). Bernstein, P.A., Newcomer, E.: Principles of Transaction Processing, Morgan Kaufmann, San Mateo, 1997. Weikum, G, Vossen, G.: Transactional Information Systems, Morgan Kaufmann, 2001. An bestimmten Stellen zusätzlich hilfreich: Dittrich, K.R., Geppert,A. (Eds): Component Database Systems,Morgan Kaufmann, 2001. Härder, T., Rahm, E.: Datenbanksysteme Konzepte und Techniken der Implementierung, 2. Auflage, Springer-Verlag, 2001. Meyer-Wegener, K.: Transaktionssysteme, B. G. Teubner, Stuttgart, 1988. Rahm, E.: Hochleistungs-Transaktionssysteme, Vieweg-Verlag, 1993. Orfali, R., Harkey, D., Edwards, J.: Client/Server Survival Guide, Third Edition, Wiley Computer Publishing Group (John Wiley & Sons, Inc.), New York, 1999. Stallings, W.: Betriebssysteme Prinzipien und Umsetzung, 4. Auflage, Pearson Studium, 2003. LITERATURLISTE (2) ÜBERSICHTSAUFSÄTZE: Bernstein, P.A.: Transaction Processing Monitors. Communications of the ACM 33 (11), 1990, 75-86. Härder, T., Meyer-Wegener, K.: Transaktionssysteme und TP-Monitore. Eine Systematik ihrer Aufgabenstellung und Implementierung, Informatik Forschung und Entwicklung (1986), 1: 3-25. Härder, T., Meyer-Wegener, K.: Die Zusammenarbeit von TP-Monitoren und Datenbanksystemen in DB/DC-Systemen. Existierende Systeme und zukünftige Entwicklungen, Informatik Forschung und Entwicklung (1986), 1: 101-122. Härder, T., Meyer-Wegener, K.: Transaktionssysteme in Workstation-Server-Umgebungen, Informatik Forschung und Entwicklung (1990), 5: 127-143. Rahm, E.: Der Database-Sharing-Ansatz zur Realisierung von Hochleistungs-Transaktionssystemen, Informatik-Spektrum 12 (2), 65-81 (1989). ZEITSCHRIFTEN: ACM TODS Transactions on Database Systems, ACM-Publikation (vierteljährl.) THE VLDB Journal VLDB Foundation (vierteljährlich) Information Systems Pergamon Press (6-mal jährlich) ACM Computing Surveys ACM-Publikation (vierteljährlich) TAGUNGSBÄNDE: SIGMOD Proceedings, jährliche Konferenz der ACM Special Interest Group on Management of Data VLDB Proceedings, jährl. Konferenz Very Large Data Bases ICDE Proceedings, jährliche Konferenz Data Engineering TAS, SS07, T. Härder 0-7 TAS, SS07, T. Härder 0-8

Transaktionen (Grundlagen/Wiederholung) Transaktionen (2) Ablaufkontrollstruktur: Transaktion DB-bezogene Definition der Transaktion: T1 BOT O 11 O 12 O 13 EOT Eine TA ist eine ununterbrechbare Folge von DML-Befehlen, welche die Datenbank von einem logisch konsistenten Zustand in einen logisch konsistenten Zustand überführt. T2 BOT O 21 O 22 O 23 EOT Transaktionsverwaltung Eigenschaften - Atomicity (Atomarität) TA ist kleinste, nicht mehr weiter zerlegbare Einheit Alles-oder-nichts -Prinzip - Consistency TA hinterlässt einen konsistenten DB-Zustand Zwischenzustände dürfen inkonsistent sein Endzustand muß Integritätsbedingungen erfüllen - Isolation - koordiniert alle DBS-seitigen Maßnahmen, um ACID zu garantieren - besitzt zwei wesentliche Komponenten Synchronisation und Recovery Sie bieten Transparenz der Nebenläufigkeit (concurrency transparency) und Fehlertransparenz (failure transparency) für den AW-Programmierer und Endbenutzer! - kann zentralisiert oder verteilt (z.b. bei VDBS) realisiert sein - soll Transaktionsschutz für heterogene Komponenten bieten Nebenläufige TA dürfen sich nicht gegenseitig beeinflussen - Durability (Dauerhaftigkeit) Wirkung erfolgreich abgeschlossener TA bleibt dauerhaft in der DB TA-Verwaltung muß sicherstellen, dass dies auch nach einem Systemfehler gewährleistet ist Wirkung einer erfolgreich abgeschlossenen TA kann nur durch eine sog. kompensierende TA aufgehoben werden TAS, SS07, T. Härder 0-9 TAS, SS07, T. Härder 0-10

Transaktionen (3) Transaktionen (4) Schnittstelle zwischen AP und DBS Aktionen auf Seite des AP BOT Op i EOT 2PC C O M M Weiterarbeit im AP I T Befehle Phase 1 Phase 2 Aktionen auf Seite des DBS Sicherstellen der Rücksetzbarkeit von Änderungsoperationen Ausführen von DML-Befehlen (Überprüfen der unverzögerten Integritätsbedingungen) (Überprüfen der verzögerten Integritätsbedingungen) Sicherstellen der Wiederholbarkeit aller Änderungen Freigabe der Betriebsmittel (Sperren) Bestätigung über erfolgreiches Ende an das AP Integritätskontrolle - modellinhärente Integritätsbedingungen (relationale Invarianten) - anwendungsspezifische Integritätsbedingungen - Trigger - ECA-Regeln semantische Integritätsbedingungen - Reichweite Attribut Tupel Relation mehrere Relationen - Zeitpunkt der Überprüfung immediate deferred - Art der Überprüfbarkeit Zustand Übergang - Anlass für Überprüfung Datenänderung Zeitpunkt TAS, SS07, T. Härder 0-11 TAS, SS07, T. Härder 0-12

Transaktionen (5) Transaktionen (6) Synchronisation - Ziel: Vermeidung von Anomalien Abhängigkeit von nicht freigegebenen Änderungen (dirty read) Verlorengegangene Änderung (lost update) Inkonsistente Analyse (non-repeatable read) Phantom-Problem - Formales Korrektheitskriterium: Serialisierbarkeit: Die parallele Ausführung einer Menge von TA ist serialisierbar, wenn es eine serielle Ausführung derselben TA-Menge gibt, die den gleichen DB-Zustand und die gleichen Ausgabewerte wie die ursprüngliche Ausführung erzielt. - Verfahren Sperrverfahren Optimistische Verfahren Zeitmarkenverfahren Mehrversionenverfahren Spezialverfahren Synchronisation (Forts.) - Verfahren (Forts.) Beispiel: Sperrverfahren - 2PL-Regeln: 1. Vor jedem Objektzugriff muß Sperre mit ausreichendem Modus angefordert werden 2. Gesetzte Sperren anderer TA sind zu beachten 3. Eine TA darf nicht mehrere Sperren für ein Objekt anfordern 4. Zweiphasigkeit: Wachstumsphase vor Schrumpfungsphase (Beachte Varianten: strikt und preclaiming) 5. Spätestens bei Commit sind alle Sperren freizugeben - Beispiel: Hierarchische Sperren IR IX R RI U X X IR + + + + - - IX + + - - - - R + - + - - - RIX + - - - - - U - - + - - - TAS, SS07, T. Härder 0-13 TAS, SS07, T. Härder 0-14

Transaktionen (7) Transaktionen (8) und Recovery - Recovery-Arten und Recovery (Forts.) - -Verfahren Transaktions-Recovery - vollständiges Zurücksetzen (TA-UNDO) - partielles Zurücksetzen auf Rücksetzpunkt (Savepoint) Crash-Recovery nach Systemfehler logisch physisch ( byte-orientiert ) kombiniert ( physiological ) - (partielles) REDO für erfolgreiche Transaktionen (Wiederholung verlorengegangener Änderungen) - UNDO aller durch Ausfall unterbrochenen Transaktionen (Entfernen der Änderungen aus der permanenten DB) Übergangs- Zustands- Übergangs- Medien-Recovery nach Gerätefehler - Spiegelplatten - vollständiges Wiederholen (REDO) aller Änderungen auf einer Archivkopie Katastrophen-Recovery - Nutzung einer aktuellen DB-Kopie in einem entfernten System oder - stark verzögerte Fortsetzung der DB-Verarbeitung mit repariertem/neuem System auf der Basis gesicherter Archivkopien (Datenverlust!) Seiten-... Eintrags- - Abhängigkeiten zu anderen Systemkomponenten Einbringstrategie - direkt (NON-ATOMIC, Update-in-Place) - verzögert (ATOMIC, Bsp.: Schattenspeicherkonzept) DB-Pufferverwaltung - Verdrängen schmutziger Seiten (STEAL vs. NOSTEAL) - Ausschreibstrategie für geänderte Seiten (FORCE vs. NOFORCE) Empfehlenswert: NON-ATOMIC / STEAL / NOFORCE Sperrverwaltung - Log-Granulat kleiner gleich Sperrgranulat! TAS, SS07, T. Härder 0-15 TAS, SS07, T. Härder 0-16