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



Ähnliche Dokumente
Transaktionsverwaltung

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

Transaktionsverwaltung

1 Mathematische Grundlagen

Recovery- und Buffermanager

Synchronisation in Datenbanksystemen in a nutshell

Synchronisierung von Transaktionen ohne Sperren. Annahme: Es gibt eine Methode, zu erkennen, wann eine Transaktion die serielle Ordnung verletzt.

Übungen zur Vorlesung. Datenbanken I

Datenbanksysteme II SS Übungsblatt 9: Wiederholung

Kapitel 2 Transaktionsverwaltung

Grundlagen verteilter Systeme

1 Transaktionen in SQL. 2 Was ist eine Transaktion. 3 Eigenschaften einer Transaktion. PostgreSQL

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Ist Excel das richtige Tool für FMEA? Steve Murphy, Marc Schaeffers

Hilfedatei der Oden$-Börse Stand Juni 2014

CodeSaver. Vorwort. Seite 1 von 6

Feiertage in Marvin hinterlegen

ecaros2 - Accountmanager

Speicher in der Cloud

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Erfahrungen mit Hartz IV- Empfängern

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank

Statuten in leichter Sprache

WS 2002/03. Prof. Dr. Rainer Manthey. Institut für Informatik III Universität Bonn. Informationssysteme. Kapitel 1. Informationssysteme

Anleitung Scharbefragung

Handbuch ECDL 2003 Modul 2: Computermanagement und Dateiverwaltung Der Task-Manager

L10N-Manager 3. Netzwerktreffen der Hochschulübersetzer/i nnen Mannheim 10. Mai 2016

Software-Engineering und Datenbanken

4. BEZIEHUNGEN ZWISCHEN TABELLEN

Java Enterprise Architekturen Willkommen in der Realität

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: MORE Projects GmbH

micura Pflegedienste München/Dachau GmbH

Autorisierung. Sicherheit und Zugriffskontrolle & Erstellen einer Berechtigungskomponente

Reporting Services und SharePoint 2010 Teil 1

Synchronisations- Assistent

Die Backup-Voreinstellungen finden Sie in M-System Server unter dem Reiter "Wartung".

Nicht kopieren. Der neue Report von: Stefan Ploberger. 1. Ausgabe 2003

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

Datenbanken: Transaktionskonzept und Concurrency Control

Übungsaufgaben Tilgungsrechnung

Datenbanken: Backup und Recovery

micura Pflegedienste Köln

Protect 7 Anti-Malware Service. Dokumentation

Downloadfehler in DEHSt-VPSMail. Workaround zum Umgang mit einem Downloadfehler

[Customer Service by KCS.net] KEEPING CUSTOMERS SUCCESSFUL

Informatik 2 Labor 2 Programmieren in MATLAB Georg Richter

Repetitionsaufgaben Wurzelgleichungen

Anleitung über den Umgang mit Schildern

Wichtiges Thema: Ihre private Rente und der viel zu wenig beachtete - Rentenfaktor

Haben Sie über elektronisches Schließfachmanagement nachgedacht? Ein Schließfach ist ohne ein solides Schloss nicht komplett.

Anleitung für die Einrichtung weiterer Endgeräte in 4SELLERS SalesControl

Verwendung des Terminalservers der MUG

Probeklausur Grundlagen der Datenbanksysteme II

Matrix42. Use Case - Sicherung und Rücksicherung persönlicher Einstellungen über Personal Backup. Version September

In diesem Thema lernen wir die Grundlagen der Datenbanken kennen und werden diese lernen einzusetzen. Access. Die Grundlagen der Datenbanken.

Pflegeberichtseintrag erfassen. Inhalt. Frage: Antwort: 1. Voraussetzungen. Wie können (Pflege-) Berichtseinträge mit Vivendi Mobil erfasst werden?

FH-SY Chapter Version 3 - FH-SY.NET - FAQ -

Die Gleichung A x = a hat für A 0 die eindeutig bestimmte Lösung. Für A=0 und a 0 existiert keine Lösung.

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3

Einführung in. Logische Schaltungen

Alltag mit dem Android Smartphone

Welche Gedanken wir uns für die Erstellung einer Präsentation machen, sollen Ihnen die folgende Folien zeigen.

104 WebUntis -Dokumentation

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Jederzeit Ordnung halten

Grundlagen der Theoretischen Informatik, SoSe 2008

Version smarter mobile(zu finden unter Einstellungen, Siehe Bild) : Gerät/Typ(z.B. Panasonic Toughbook, Ipad Air, Handy Samsung S1):

How to do? Projekte - Zeiterfassung

Dokumentation. Black- und Whitelists. Absenderadressen auf eine Blacklist oder eine Whitelist setzen. Zugriff per Webbrowser

Lehrer: Einschreibemethoden

DAS PARETO PRINZIP DER SCHLÜSSEL ZUM ERFOLG

Die Entwicklung eines Glossars (oder eines kontrollierten Vokabulars) für ein Unternehmen geht üblicherweise in 3 Schritten vor sich:

1 Einleitung. Lernziele. automatische Antworten bei Abwesenheit senden. Einstellungen für automatische Antworten Lerndauer. 4 Minuten.

Dokumentenverwaltung im Internet

Systeme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss

MARCANT - File Delivery System

Schnelleinstieg in die (cs) AuftragPro

Ist Fernsehen schädlich für die eigene Meinung oder fördert es unabhängig zu denken?

Studie Autorisierungsverfahren Online-Banking n = 433, Befragungszeitraum: Februar bis März 2014

Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten

Fotogalerie mit PWGallery in Joomla (3.4.0) erstellen

Arbeiten mit UMLed und Delphi

ecaros2 Installer procar informatik AG 1 Stand: FS 09/2012 Eschenweg Weiterstadt

teamsync Kurzanleitung

SMS/ MMS Multimedia Center

Der Jazz Veranstaltungskalender für Deutschland, Österreich und die Schweiz

GEVITAS Farben-Reaktionstest

Das Stationsportal der DB Station&Service AG - Das Rollenkonzept. DB Station&Service AG Vertrieb Stationsportal Berlin, Juli 2015

BERECHNUNG DER FRIST ZUR STELLUNGNAHME DES BETRIEBSRATES BEI KÜNDIGUNG

2.8 Grenzflächeneffekte

Kontakte Dorfstrasse 143 CH Kilchberg Telefon 01 / Telefax 01 / info@hp-engineering.com

Wie Sie mit Mastern arbeiten

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:

Sonderrundschreiben. Arbeitshilfe zu den Pflichtangaben in Immobilienanzeigen bei alten Energieausweisen

Erstellen von x-y-diagrammen in OpenOffice.calc

Prodanet ProductManager WinEdition

Anwendungsbeispiele Sign Live! Secure Mail Gateway

Transkript:

Teil I Einführung & Grundlagen Kapitel 1: Einführung in das Transaktionskonzept 1.1 Was ist eine Transaktion? 1.2 Transaktionseigenschaften 1.3 Beispiele Datenbanktransaktionen: Banküberweisung Moderne Informationssysteme: Transaktionale Prozesse 1.4 Ein einfaches Transaktionsmodell Read/Write-Modell DB-System-Modell Transaktionsverwaltung in modernen IS Teil I: Einführung & Grundlagen I-1 1.1 Was ist eine Transaktion? Eine Transaktion ist eine Menge von logisch zusammengehörenden Operationen (zumeist in ein Programm eingebunden, aber auch interaktiv möglich) Im Fall von klassischen Datenbanktransaktionen beziehen sich alle Operationen (Lesen bzw. Schreiben von Datenobjekten) auf dasselbe Datenbanksystem Verteilte Transaktionen erlauben Operationen in verschiedenen Datenbanksystemen Verallgemeinerte Sichtweise: Operationen sind beliebige Dienstaufrufe (semantisch reiche Operationen), nicht unbedingt innerhalb von Datenbanken Transaktionen basieren auf einem generischen Abstraktionskonzept zum Kapseln der enthaltenen Operationen, um für diese bestimmte Ausführungsgarantien durchzusetzen Ausführungsgarantien abgeleitet von ACID-Eigenschaften Diese Garantien werden vom System transparent für den Anwendungsentwickler/ Benutzer bereitgestellt Anwendungsentwickler/Benutzer muss lediglich die Transaktionsgrenzen festlegen (BOT = Begin-of-Transaction bzw. EOT = End-of-Transaction), wird aber von allen anderen Aspekten zur Realisierung der Garantien befreit Transaktionsverwaltung in modernen IS Teil I: Einführung & Grundlagen I-2

1.2 Transaktionseigenschaften: ACID Atomicity (Atomarität) Eine Transaktion wird entweder komplett ausgeführt ( commit ) oder erscheint so, als wäre sie nie gestartet worden, d.h. sie hinterlässt keine Effekte ( rollback ). Die Semantik einer Transaktion entspricht also einem Alles-oder-Nichts. Consistency (Konsistenz) Eine Transaktion führt die Datenbank von einem konsistenten Zustand in einen anderen konsistenten Zustand über Isolation Transaktionen, auch wenn parallel ausgeführt, erscheinen so als ob sie isoliert voneinander (d.h. sequentiell) ausgeführt werden Durability (Dauerhaftigkeit/Persistenz) Nach dem Commit einer Transaktion sind ihre Effekte dauerhaft, d.h. überleben auch Systemabstürze Transaktionsverwaltung in modernen IS Teil I: Einführung & Grundlagen I-3 Durchsetzen von Transaktionseigenschaften Transaktionen sind eine Art Vertrag zwischen einem Anwendungsprogramm und dem Laufzeitsystem Die ACID-Eigenschaften können dabei als Vertragsinhalt angesehen werden, durch welche die Aufgaben der Laufzeitumgebung festgeschrieben sind Die wichtigsten Aufgaben einer Infrastruktur zur Transaktionsverwaltung bestehen aus der korrekten Synchronisation paralleler, konkurrierender Transaktionen (Concurrency Control Æ Isolation) sowie der korrekten Behandlung von System- und Anwendungsfehlern (Recovery Æ Atomarität, Persistenz). Diese Unterscheidung spiegelt sich auch in den Komponenten der Infrastruktur zur Transaktionsverwaltung wieder Für beide Bereiche (Concurrency Control und Recovery) bedarf es zunächst einer eingehenden Untersuchung, was jeweils korrekt bedeutet Korrektheitskriterien (Concurrency Control: Serialisierbarkeitstheorie, Recovery: Fehlererholung / Crash-Recovery) Auf der Basis dieser Korrektheitskriterien müssen dann Systeme entwickelt werden, welche die verlangten Garantien durchsetzen Concurrency Control- bzw. Recovery-Protokolle Transaktionsverwaltung in modernen IS Teil I: Einführung & Grundlagen I-4

1.3 Transaktionsverwaltung Beispiele Beispiel 1: Banküberweisung Klassischer Vertreter von Datenbanktransaktionen Kurzlebige Transaktionen, operieren auf wenigen Datenobjekten Parallele Zugriffe auf Konto-Relationen (bzw. Objekte) Konto (KontoNr, KundenNr, FilialNr, Kontostand) Typische Operationen Debit (KontoNr, Betrag) bucht Betrag von Konto KontoNr ab Credit (KontoNr, Betrag) bucht Betrag auf Konto KontoNr sowie Transfer (KontoNrA, KontoNrB, Betrag), das aus einem Debit(KontoNrA, Betrag) und einem Credit(KontoNrB, Betrag) besteht. Beispiel 2: Geschäftsprozesse (Workflow Management) Transaktionskonzepte (in erweiterter Form) für transaktionale Prozesse, ausserhalb von Datenbanksystemen Prozesse sind äusserst langlebig, greifen auf autonome, verteilte und evtl. auch heterogene Ressourcen zu Operationen (Aktivitäten) = Aufrufe von Anwendungsdiensten Komplexe Struktur durch flexiblere Fehlerbehandlung (Alternativen) Transaktionsverwaltung in modernen IS Teil I: Einführung & Grundlagen I-5 Beispiel 1 Banküberweisung Ich möchte 50.- SFr von meinem Konto abheben Ich möchte meiner Enkelin 200.- SFr überweisen Client Debit (4711, 50.- SFr) DBMS Client Transfer (0815, 4711, 200.- SFr) = Debit (0815, 200.- SFr) Credit (4711, 200.- SFr) DB Bank Transaktionsverwaltung in modernen IS Teil I: Einführung & Grundlagen I-6

Beispiel 1 Banküberweisung: Atomarität Ich möchte 50.- SFr von meinem Konto abheben Ich möchte meiner Enkelin 200.- SFr überweisen KontoNr 0815 4711 Kontostand SELECT kontostand INTO :balancetransa FROM Konto WHERE kontonr = 0815;... 2570.- 2570.- balancetransa := balancetransa - 200; Update Konto SET kontostand = :balancetransa Where kontonr = 0815; SELECT kontostand INTO :balancetransb FROM Konto WHERE kontonr = 4711; KontoNr 0815 4711 Kontostand 120.- 120.- 2770.- *** Programmabbruch *** Transaktionsverwaltung in modernen IS Teil I: Einführung & Grundlagen I-7 Beispiel 1 Banküberweisung: Atomarität Im vorigen Ablauf ist die Alles-oder-Nichts-Semantik der Atomarität verletzt Ein inkonsistenter Zwischenzustand bleibt erhalten (bei der fehlgeschlagenen Überweisung ging Geld verloren!) Abhilfe: für die durch den Systemabsturz abgebrochene Überweisungstransaktion sollte das bereits erfolgte Debit automatisch durch das Datenbanksystem rückgängig gemacht werden Gefragt sind also geeignete Recovery-Protokolle, die beispielsweise den Zustand einspielen, der direkt vor Beginn der Überweisungstransaktion vorlag Transaktionsverwaltung in modernen IS Teil I: Einführung & Grundlagen I-8

Beispiel 1 Banküberweisung: Isolation Ich möchte 50.- SFr von meinem Konto abheben Ich möchte meiner Enkelin 200.- SFr überweisen KontoNr 0815 4711 Kontostand SELECT Kontostand INTO :balanceatm FROM Konto WHERE NontoNr = 4711; balanceatm := balanceatm 50; Update Konto SET Kontostand = :balanceatm WHERE KontoNr = 4711; 0815 4711 KontoNr Kontostand... SELECT Kontostand INTO :balancetransb FROM Konto WHERE KontoNr = 4711; balancetransb := balancetransb + 200; Update Konto SET Kontostand = :balancetransb WHERE KontoNr = 4711; Transaktionsverwaltung in modernen IS Teil I: Einführung & Grundlagen I-9 Beispiel 1 Banküberweisung: Isolation Im vorigen Ablauf überschneiden sich die beiden Transaktionen in inkorrekter Weise Die Änderungsoperation der Überweisungstransaktion geht komplett verloren (und damit auch das überwiesene Geld) Der korrekte Endzustand nach kompletter Ausführung beider Transaktionen wäre: KontoNr 0815 4711 Kontostand 270.- 2570.- 120.- 2770.- 70.- 2570.- 320.- 70.- Das System muss daher die beiden Transaktionen durch geeignete Concurrency Control-Protokolle voneinander isolieren, indem z.b. die Überweisungstransaktion den Kontostand von 4711 erst lesen und verändern kann, nachdem die ATM-Transaktion beendet ist. Transaktionsverwaltung in modernen IS Teil I: Einführung & Grundlagen I-10

Beispiel 1 Banküberweisung Weitere Anforderungen der Beispielanwendung Konsistenz z.b. Einschränkung, dass der Kontostand niemals negativ werden kann Dies wird in der Regel durch Integritätsbedingungen zugesichert CREATE ASSERTION positiverkontostand CHECK (NOT EXISTS ( SELECT * FROM Konto WHERE Kontostand < 0 )) Auch die Konsistenz wird vom System garantiert und muss nicht vom Anwendungsentwickler berücksichtigt werden Dauerhaftigkeit Änderungen am Kontostand durch korrekt (mit Commit) beendete Transaktionen müssen dauerhaft sein, also z.b. auch Systemabstürze überstehen Performanz Natürlich muss das System mehr als zwei Benutzer parallel unterstützen, ohne dass dabei die Synchronisation konkurrierender Transaktionen zu signifikanten Performance-Einbussen führt Transaktionsverwaltung in modernen IS Teil I: Einführung & Grundlagen I-11 Beispiel 2 Geschäftsprozesse Prozesse sind oberhalb von Datenbanken bzw. transaktionalen Anwendungen definiert Jeder Schritt (Aktivität) ist selbst eine Transaktion Ziel: Transaktionssemantik für Prozesse! Client Prozess-Manager (Workflow Management System) DBMS WF DB WF Anwendung A Anwendung B Anwendung C DBMS A DBMS B1 DBMS B2 DBMS C DB A DB B1 DB B2 DB C Transaktionsverwaltung in modernen IS Teil I: Einführung & Grundlagen I-12

Beispiel 2 Geschäftsprozesse: Atomarität CAD Zeichnung Stückliste schreiben Konstruktionsprozess Test Technische Doku. CAD Doku. Prozess- Manager CAD PDM ERP Test-DBMS Produkt-DBMS Dokumentation Transaktionsverwaltung in modernen IS Teil I: Einführung & Grundlagen I-13 Beispiel 2 Geschäftsprozesse: Atomarität Im Bezug auf Atomarität für kurze (Buchungs-)Transaktionen war die Alles-oder-Nichts-Semantik sehr erstrebenswert Für Prozesse ist dies jedoch nicht mehr der Fall Beim Auftreten eines Fehlers sollten nicht automatisch die gesamten Änderungen, d.h. alle bisher ausgeführten Dienste, eines Prozesses verworfen werden (Kosten optimieren!) Manchmal kann dies auch gar nicht erlaubt sein durch die Semantik der einzelnen Prozess-Schritte (wenn zum Beispiel die Effekte einer Aktivität nicht rückgängig gemacht werden können, da kein zusätzlicher Dienst hierzu verfügbar ist) Prozesse benötigen flexiblere Fehlerbehandlungsstrategien z.b. alternative Ausführungen, die im Fehlerfall zur Anwendung kommen Bei Systemfehlern sollte der Prozess weitergeführt werden als hätte es keinen Fehler gegeben (Vorwärts-Recovery) Transaktionsverwaltung in modernen IS Teil I: Einführung & Grundlagen I-14

Beispiel 2 Geschäftsprozesse: Isolation CAD Zeichnung Konstruktionsprozess Prozess- Manager Stückliste schreiben Produktionsprozess Test Stückliste lesen Produktion planen, Technische Doku. Kann nicht rückgängig gemacht werden Produktion CAD Doku. Lagerung CAD PDM ERP Test-DBMS Produkt-DBMS Dokumentation Transaktionsverwaltung in modernen IS Teil I: Einführung & Grundlagen I-15 Beispiel 2 Geschäftsprozesse: Isolation Parallelität zwischen Prozessen ist sehr wichtig Aber: Datenbanktransaktionen können jederzeit abgebrochen werden, sowohl bei Anwendungsfehlern als auch bei Systemfehlern, bei Prozessen ist dies nicht immer der Fall Dies hat auch Konsequenzen für die Concurrency Control, da Fälle auftreten können, die sich durch Abbruch nicht mehr beheben lassen Concurrency Control muss zusätzliche Randbedingungen berücksichtigen Gleichzeitig darf aber der Parallelitätsgrad nicht zu stark eingeschränkt werden (Prozesse können sehr langdauernd sein!) Abhilfe: Berücksichtigung von Ausführungskosten (sowohl für normale Prozess- Schritte als auch für deren Kompensation) um zu entscheiden, wie restriktiv der Prozess-Manager agieren sollte Transaktionsverwaltung in modernen IS Teil I: Einführung & Grundlagen I-16

Beispiel 2 Geschäftsprozesse Weitere Anforderungen der Beispielanwendung Dauerhaftigkeit Der Prozess-Manager verwaltet keine eigenen Daten (diese liegen alle in den unterliegenden transaktionalen Anwendungen; dort sorgen lokale Transaktionen für die ACID-Eigenschaften) Aber: um Vorwärts-Recovery zu unterstützen muss immer der aktuelle Zustand eines Prozesses persistent verwaltet werden Datenbank des Prozess-Managers für Prozess-Zustände Transaktionsverwaltung in modernen IS Teil I: Einführung & Grundlagen I-17 1.4 Read/Write-Modell Die wesentlichen Aspekte von Concurrency Control und Recovery werden wir zunächst anhand des klassischen Read/Write-Modells von Datenbanken einführen Später (vor allem in Teil V) wird dieses Modell dann erweitert Grundlegende Begriffe Datenbank (DB) Menge von Objekten: DB = {o 1, o 2, } Diese Menge ist statisch, Objekte sind in der Regel einzelne Datenseiten Operation (OP) Menge von Operationen: OP = {read, write} Aktion Aktion a œ (OP DB), also entweder read(o i ) oder write(o i ). Dies wird später Gegenstand der Verallgemeinerung werden read(o i ) liefert das Datenobjekt o i zurück write(o i ) schreibt Datenobjekt o i Im Folgenden werden wir die Aktionen in abgekürzter Schreibweise verwenden: r(o i ) für read(o i ) w(o i ) für write(o i ) Transaktionsverwaltung in modernen IS Teil I: Einführung & Grundlagen I-18

Transaktion Transaktion (T) Eine Transaktion T ist ein Tupel mit T = ( ACT, «) bestehend aus einer Menge von Aktionen ACT, zwischen denen eine (partielle) Ordnungsrelation «vorhanden ist Dabei ist: ACT = { a 1, a 2,, a k }» term a 1,, a k sind Aktionen term œ {C, A} ist Terminierungsaktion «(ACT ACT) ist Präzedenzrelation Jede Transaktion T ist entweder durch C (commit) oder A (abort) abgeschlossen. C bzw. A ist hinter allen Aktionen der jeweiligen Transaktion geordnet (bezüglich «), also a i «term für alle 1 i k. Die Präzedenzrelation «legt die Ausführungsreihenfolge der Aktionen einer Transaktion fest «partiell: Parallelität innerhalb einer Transaktion (intra-transaktionale Parallelität) erlaubt «total: sequentieller Ablauf (dies ist der Normalfall) T = a 1 «a 2 ««a k «C Ò Transaktionsverwaltung in modernen IS Teil I: Einführung & Grundlagen I-19 DB-System-Modell und Komponenten Der TM leitet eingehende Operationen an den Scheduler weiter. Im Falle von verteilten DBMSen beinhaltet dies die Kommunikation sowie die Koordination verteilter Transaktionen. Der Scheduler entscheidet, ob Operationen ausgeführt, zurückgewiesen oder verzögert werden. Aufgabe des RM ist, die DB vor Systemfehlern zu schützen (z.b. wenn der transiente Speicher verloren geht) und zu garantieren, dass die Effekte abgeschlossener Transaktionen dauerhaft sind bzw. dass abgebrochene TA keine Effekte hinterlassen. Der CM sorgt für einen effizienten Zugriff auf Daten. Transaktionen Transaktions- Manager (TM) Scheduler Recovery-Manager (RM) read / write fetch / flush Cache-Manager (CM) read / write / commit / abort read / write / commit / abort read / write / commit / abort flush fetch read / write DBMS Data- Manager Cache transienter Speicher Datenbank Log persistenter Speicher Transaktionsverwaltung in modernen IS Teil I: Einführung & Grundlagen I-20

DB-System-Modell und Komponenten Module In der Praxis sind die einzelnen Module stark voneinander abhängig, deren Implementierung also zumeist ineinander verzahnt (speziell um Performance-Gewinne zu erzielen) Trennung ist also eher konzeptioneller (didaktischer) Natur Weitergehende Aspekte sind in diesem abstrakten Modell komplett ausgeblendet (wie z.b. die Anfrageoptimierung, die Abbildung einer SQL-Schnittstelle auf read/write-operationen, etc.) Handshaking Ordnungen auf Aktionen müssen zwischen den einzelnen Modulen korrekt weitergegeben werden Dies geschieht in diesem Modell strikt seriell mit einem Handshaking-Verfahren, d.h. im Falle von a «b wird b erst an die nächste Komponente gegeben, nachdem a ein Ergebnis zurückgeliefert hat Anwendbarkeit des Modells Das System-Modell ist zwar auf die Read/Write-Semantik von Transaktionen zugeschnitten (read, write, flush, fetch), die Hauptkomponenten und deren Interaktionen lassen sich aber sehr gut verallgemeinern Im Fall der transaktionalen Prozesse sind beispielsweise TM, Scheduler, und RM wichtige Komponenten des Prozess-Managers Transaktionsverwaltung in modernen IS Teil I: Einführung & Grundlagen I-21