Transaktionssysteme: Einführung
Stellen Sie sich vor, Sie säßen in einem Reisebüro und wollten einen Flug in die Dominikanische Republik buchen. Glücklicherweise ist noch genau ein Platz für Sie frei. Am Flughafen angekommen, müssen Sie leider feststellen, dass der Flug „überbucht“ ist und Sie deshalb Ihren Urlaub absagen müssen. Was ist passiert? Möglicherweise lag ein Fehler im Platzreservierungssystem der Fluggesellschaft vor: Genau zur gleichen Zeit wie Sie buchte noch jemand den letzten freien Platz. Das Reservierungssystem war mit dieser gleichzeitigen Anfrage überfordert und bestätigte beide Buchungen, statt eine abzulehnen.
Wann immer mehrere Benutzer gleichzeitig auf eine gemeinsame Datenbasis zugreifen, spricht man von Nebenläufigkeit. Nebenläufigkeit bietet einen großen Vorteil: Die Daten müssen nur ein einziges Mal an zentraler Stelle abgelegt werden und können dann von beliebigen Orten zu beliebigen Zeiten bearbeitet werden. Nebenläufigkeit will jedoch sorgfältig durchdacht sein, denn sonst können schwerwiegende Probleme auftreten. Ein überbuchter Flug ist zwar ärgerlich, aber noch relativ harmlos; wirklich schlimm wird es, wenn Unternehmen wertvolle Daten unwiederbringlich verlieren oder die Kontenverwaltung einer Bank große Geldbeträge falsch überweist.
Neben der Nebenläufigkeit wollen weitere Problemkreise durchdacht sein: Wie bringe ich meine Daten wieder in einen ordentlichen Zustand, falls doch einmal etwas schief geht? Wie stelle ich meine Datenbank nach einem Komplettausfall wieder her? Die nachfolgende Theorie der Transaktionssysteme beschäftigt sich mit der Untersuchung und Beantwortung dieser Fragen.