Transaktionssystem

Transaktionssysteme bilden den Rahmen für die Integration von Datenbanksystemen in Enterprise-Architekturen. Insbesondere sind Transaktionssysteme eine grundlegende Technologie von Client-Server-Anwendungen. Durch Transaktionssysteme wird sichergestellt, dass parallele Transaktionen atomar, persistent und voneinander abgegrenzt sind. Transaktionssysteme stellen somit generische Dienste zur Verfügung. Damit ist eine grundlegende Basis für Datenkonsistenz und Verlässlichkeit gegeben, wie das Voraussetzung für die Entwicklung von mehrbenutzerfähigen und fehlertoleranten Anwendungen ist. Daher sind Transaktionen eines der wichtigsten Konzepte im Hinblick auf Datenbanksysteme, jedoch finden sie auch Beachtung im Bereich von Laufzeitumgebungen, Betriebssystemen oder Programmiersprachen.


Weitere wichtige Anforderungen an Transaktionssysteme sind die Abwicklung sehr hoher Transaktionsraten, die Gewährleistung hoher Verfügbarkeit sowie die Unterstützung eines modularen Systemwachstums. Transaktionssysteme sind im Allgemeinen horizontal und/oder vertikal verteilt. Durch sehr große Transaktionssysteme wie zum Beispiel das Customer Information Control System (CICS) oder die Transaction Processing Facility (TPF) werden weit mehr als 100.000 nebenläufige Benutzer je System unterstützt.

Die operationalen System- und Betriebsmerkmale von Transaktionssystemen (TA-Systemen) sind:

  • Benutzung im Dialog, man spricht auch vom Online Transaction Processing (OLTP).
  • Wenige kurze Transaktionstypen mit hoher Wiederholrate.
  • Sehr viele Benutzer gleichzeitig (Nebenläufigkeit).
  • Gemeinsame Datenbestände mit größtmöglicher Aktualität.
  • Kurze Antwortzeit als Optimierungsziel vor Auslastung.
  • Stochastisches Verkehrsaufkommen.
  • Hohe Verfügbarkeit des Systems.
Grobaufbau eines zentralisierten Transaktionssystems

Grobaufbau eines zentralisierten Transaktionssystems

Die Abbildung zeigt zunächst einmal den groben Aufbau eines zentralisierten TA-Systems unter der Annahme, dass dieses auf einem einzelnen Verarbeitungsrechner läuft. Ein solches TA-System besteht aus einem Datenbanksystem (DBS) und einem DC-System (Data Communication System), das wiederum den TP-Monitor (Transaction Processing Monitor), die anwendungsspezifischen Transaktionsprogramme und das Datenbankverwaltungssystem (DBVS) zusammenfasst. Für die Kontrolle der Ausführung von Transaktionsprogrammen und die Kommunikation dieser Programme mit der Datenbank ist der TP-Monitor verantwortlich. So können interne Prozesse für den Anwender transparent gehalten werden. Aus Leistungsgründen wird die Programm- und Prozessverwaltung durch den TP-Monitor realisiert. Dessen weitere Aufgaben betreffen die Verwaltung von Nachrichten und Transaktionen, sowie neben der Authentifizierung die Autorisierung. Ein TP-Monitor arbeitet nach dem Konzept eines virtuellen Terminals - dabei werden gerätespezifische Nachrichten in ein neutrales Format transformiert.

Die Interoperabilität zwischen TA-Teilsystemen

Um die Interoperabilität zwischen den Teilsystemen eines TA-Systems aus TP-Monitoren, Datenbanksystemen etc. von unterschiedlichen Herstellern realisieren zu können, wurde von der X/Open - einem Industriekonsortium und Standardisierungsgremium - ein relativ abstraktes Modell eines TA-Systems definiert. Neben der Portabilität von Transaktionsanwendungen war es das Ziel, eine einheitliche Schnittstelle für Anwendungen festzulegen.

X/Open-Modell eines zentralisierten Transaktionssystems

X/Open-Modell eines zentralisierten Transaktionssystems

Die Abbildung zeigt das Modell für den zentralen Fall. Dessen Übertragung auf verteilte Transaktionssysteme ist in dem Artikel X/Open DTP dargestellt. Das Modell basiert darauf, dass im Rahmen einer Transaktion mehrere sogenannte Resource Manager (RM) aufgerufen werden können - das können Datenbanksysteme, Dateisysteme, Window-Systeme, Mail-Server oder auch Komponenten wie die Nachrichtenverwaltung eines TP-Monitors sein. Das Modell führt einen sogenannten Transaktions-Manager (TM) ein, der für die Verwaltung der Transaktionen verantwortlich ist. Dazu gehört ein gemeinsames Two-Phase-Commit-Protocol mit allen an der Transaktionsausführung beteiligten RMs zur Gewährleistung der ACID-Paradigmen. In der realen Implementierung ist der TM üblicherweise Teil des TP-Monitors oder des Betriebssystems. Das Modell der X/Open berücksichtigt jedoch nur einen Teil der Funktionen eines traditionellen TP-Monitors, da eine Mehrzahl der Funktionen als Teil der Ablaufumgebung angesehen wird.

Die Abbildung zeigt, dass die Schnittstellen zwischen den beteiligten Komponenten - Anwendung, TM sowie RM - standardisiert wurden, so dass die Interoperabilität zwischen ansonsten unabhängigen RMs realisiert werden kann. Eine Anwendung teilt dabei über die TX-Schnittstelle dem TM die einzelnen Phasen einer Transaktion - Beginn, Ende oder Abbruch - mit. Der TM vergibt mit Beginn einer Transaktion eine eindeutige ID-Nummer - auch Transaktionsnummer -, welche dann von der Anwendung für alle Aufrufe des RMs genutzt werden. Mit dem Ende einer Transaktion wird dann das bereits erwähnte Commit-Protokoll zwischen TM und RM ausgeführt. Das X/Open-Modell impliziert an dieser Stelle, dass jeder RM eine lokale Verwaltung der Transaktionen - zum Beispiel die Synchronisation, Logging- oder Recovery-Funktionen - unterstützt.

Informationen zum Artikel
Deutsch: Transaktionssystem
Englisch: transaction system - TA
Veröffentlicht: 28.10.2013
Wörter: 670
Tags: #Datenverarbeitung
Links: Abbruch, ACID (atomicity, consistency, isolation, durability), Annahme, Antwortzeit, Authentifizierung