Transaktionsorientierte Systeme

20.02.1987

Anwendungen, in denen transaktionsorientierte Systeme eingesetzt werden, sind meist sensibel gegenüber Ausfällen. Folgerichtig haben eine Reihe von Herstellern sogenannte fehlertolerante Systeme entwickelt. Der folgende Bericht entstammt dem Hause Tandem, das die Vorzüge der eigenen Architektur herausstellt.

In den hinter uns liegenden fünfundzwanzig Jahren haben Computer ihren "Marsch durch die Institution" erfolgreich durchgeführt. Diese Entwicklung verlief aber nicht einheitlich. Die steigenden Anforderungen der Anwender nach zeitnaher Datenverarbeitung konnten die ursprünglich auf reine Stapelverarbeitung ausgelegten Systeme nicht erfüllen. Deshalb wurden spezielle Rechner entwickelt, die für Echtzeit-Verarbeitung geeignet waren. Mit der Einführung dieser Online-Systeme gewann die EDV eine neue Bedeutung in den Unternehmen.

Gleichzeitig stiegen aber auch die Anforderungen der Anwender an die Verfügbarkeit und Sicherheit der Rechner. Systemausfälle und Stillstandszeiten sind nicht mehr akzeptabel. Die Lösung dieser Probleme wurde mit der Entwicklung ausfallgeschützte Parallelrechner erreicht.

Im Jahre 1974 startete Tandem Computers mit einem fehlertoleranten, ausfallgeschützten System. Die neue Philosophie war die Parallelrechner-Architektur. Nicht ein neuer Rechner stellte die eigentliche Innovation dar, sondern eine Produkteigenschaft, eben die Fehlertoleranz.

Im Lauf der Zeit ging man bei verschiedenen Herstellern unterschiedliche Wege, um ausfallgeschützte Computer zu entwickeln. Heute werden im wesentlichen zwei Auffassungen vertreten; eine geht davon aus diese System-Eigenschaft per Hardware zu realisieren, die andere Ansicht setzt auf eine Softwarelösung.

Bezogen auf einen angenommenen Ausfall eines Prozessors unterscheiden sich die beiden Varianten wie folgt: Bei der Hardware-Lösung wird jeder Verarbeitungsschritt auf zwei Prozessoren ausgeführt, also redundant. Jedes Verarbeitungsergebnis wird auf Übereinstimmung geprüft. Eine auftretende Differenz führt dazu, daß der Vorgang noch einmal von zwei weiteren Prozessoren gleichzeitig bearbeitet wird. Das bedeutet in der Praxis aber, daß vier Prozessoren für die gleiche Aufgabe benötigt werden, was die Kosten hier vervierfacht. Ein Vorteil dieser Lösung liegt in ihrer Einfachheit und in einem recht sicheren Schutz gegen Hardware-Fehler.

Eine Lösung per Software setzt das Design und die Verfügbarkeit eines speziellen Betriebssystems voraus. In diesem Falle kontrollieren sich alle Prozessoren gegenseitig auf ihren Status. Das Betriebssystem wertet die Nachrichten aus. In einem Fehlerfall, dabei ist es ohne Belang, ob der Fehler von Hard- oder Software verursacht wurde, wird der entsprechende Prozessor für das Gesamtsystem inaktiv gesetzt.

Seine Aufgaben werden den anderen verfügbaren Prozessoren zusätzlich übertragen. Der Anwender hat bei einem solchen System den Vorteil, daß im Normalfall die Prozessoren unabhängig ihre eigenen Aufgaben lösen und daß dadurch Redundanz vermieden wird. Der Vollständigkeit halber sei angefügt, daß natürlich auch in einem solchen System Fehlerprüfungsroutinen durchgeführt werden innerhalb des Rechenwerkes und der Speicher.

Tandem-NonStop-Rechner verfügen immer über mehrere Prozessoren pro System. Diese Prozessoren sind untereinander verbunden und tauschen gegenseitig permanent Status-Nachrichten aus. Alle in einem System verfügbaren Prozessoren arbeiten aber an unterschiedlichen Aufgaben. Es gibt also keine Prozessoren, die gleichzeitig die gleiche Aufgabe ausführen oder die nur im Falle eines Prozessor-Ausfalls aktiviert werden. Gegenüber solchen Systemen bringt ein Parallelrechner dem Anwender eine wesentlich höhere Verarbeitungsleistung. Im Fehlerfall wird die Last im System neu verteilt und die aktiven Prozessoren übernehmen anteilig die höhere Last.

Damit ein Rechner ausfallgeschützt arbeiten kann, ist eine Reihe wichtiger Hardware- und Software-Anforderungen zu erfüllen. So müssen zum Beispiel nicht nur die Prozessoren mehrfach vorhanden sein, sondern auch weitere wichtige Komponenten. Dazu gehören die Datenwege zwischen den Prozessoren und den Steuereinheiten sowie die Magnetplatten. Eine beispielhafte Konfiguration zeigt die Abbildung.

Hier sind deutlich die vier parallelen Prozessoren zu sehen, die untereinander durch einen doppelten Datenbus verbunden sind. Außerdem zeigt die Grafik die parallelen Datenwege zu den Magnetplatten und das Prinzip der Spiegeldateien auf Magnetplatten. Es ist klar ersichtlich, daß bei Ausfall einer Komponente oder eines Datenpfades immer eine Alternative besteht. Natürlich ist auch die Stromversorgung der einzelnen Systembestandteile mehrfach ausgelegt.

Der technische Stand heutiger Computer-Systeme ist sehr hoch. Die Sicherheit und Zuverlässigkeit erlaubt den Einsatz in immer anspruchsvolleren Anwendungen. Dabei bleibt der Ausfallschutz eines Rechners eine äußerst wichtige Systemeigenschaft .

Die Entwicklung wird allerdings dahin gehen, die Fehlertoleranz eines Systems als Selbstverständlichkeit zu nehmen, insbesondere bei bestimmten Herstellern. Tandem ist so zu einem Synonym für Fehlertoleranz geworden.

Ein wichtiger neuer Aspekt ist die mit der Fehlertoleranz verknüpfte Parallelität. In diesem Bereich wird man die nächsten wichtigen Entwicklungsschritte erleben. Bestimmte Anwendungen, zum Beispiel grafische Datenverarbeitung, sind immer noch so zeitaufwendig und systembelastend, daß ihr Einsatz nur langsam vorankommt. Wenn man erreichen kann, daß solche komplexen Aufgaben innerhalb eines Systems verteilt werden können, ergeben sich völlig neue Perspektiven. Ein entsprechendes Forschungsvorhaben der Universität Stuttgart wird von Tandem gefordert.

Aber auch heute schon werden die Vorteile fehlertoleranter Parallelrechner intensiv genutzt. In weltweiten Netzwerk-Anwendungen, zum Beispiel bei Banken, kann auf Ausfallsicherheit nicht verzichtet werden. Überall dort, wo viele Teilnehmer auf gemeinsame Daten zugreifen und ein Rechnerverbund gleichsam ein "elektronisches Rückgrat" eines Unternehmens oder einer Organisation bildet, ist uneingeschränkte Verfügbarkeit und höchste Transparenz erforderlich. Solche Anwendungen erlauben keinerlei Betriebsunterbrechungen. Dabei ist es unerheblich, ob diese durch Fehler im Rechner oder in Kommunikationsnetzen, durch Systemausbau oder durch Wartung beziehungsweise Reparatur verursacht werden.

Die bisherigen Erfolge dieser Systeme lassen die Voraussage zu, daß sich in diesem Bereich die wichtigsten neuen Entwicklungen konzentrieren werden.