In der Regel arbeiten Fachleute daran, die Anzahl der Fehler zu senken. Auf dem Campus in Kaiserslautern haben die Forscher eine andere Herangehensweise gewählt: "Wir wollten Datenbanksysteme so entwickeln, dass sie sich im Fall eines Fehlers wesentlich schneller als herkömmliche Systeme reparieren lassen, ohne dass die Konsistenz und Sicherheit der Daten beeinträchtigt wird und das System schnell wieder verfügbar ist", sagt der Informatiker. Um ihr Ziel zu erreichen, haben sie darauf gesetzt, die Software-Architektur der Datenbanksysteme zu verbessern.
Um Fehler in solchen Systemen zu beheben, kommen bestimmte Verfahren zum Einsatz, sogenannte Recovery-Maßnahmen (zu Deutsch: Reparatur). "Dafür müssen die vom Fehler betroffenen Speicherungseinheiten, die sogenannten Seiten, wiederhergestellt werden", fährt Sauer fort. Dieser Begriff erinnert an die Aufteilung von Informationen in Lexika, Wörter- oder Telefonbüchern. Beispielsweise gehört jeder Eintrag in einem Telefonbuch zu einer bestimmten nummerierten Seite. "Ist ein Telefonbuch beschädigt, kann man es wiederherstellen, indem die betroffenen Seiten dank einer gesicherten Kopie ersetzt werden", nennt er als Vergleich.
Im Kern ihrer Arbeit steht die Tatsache, dass nicht alle Seiten in einer Datenbank gleich wichtig sind und deswegen nicht gleich behandelt werden müssen. "Manche Seiten sind für die Anwendung wichtiger, weil sie Daten enthalten, die etwa von einem Kunden sofort gebraucht werden oder auf die viel öfter zugegriffen wird", sagt Sauer. Ähnlich wie bei einem Telefonbuch, bei dem die Seiten mit dem Nachnamen "Schmidt" viel wichtiger sind als die Seiten mit dem Buchstaben "Q".
Bei herkömmlichen Datenbanksystemen ist es während eines Reparaturprozesses erst möglich, auf die Daten zuzugreifen, wenn alle Seiten repariert sind. "Dies kann mehrere Stunden dauern", so Sauer. Bei der Technik, die die Informatiker entwickelt haben, ist dies anders: Der Datenzugriff ist schon zu Beginn der Reparatur möglich. Ein Algorithmus prüft dabei die jeweilig verwendete Seite. "Muss sie nicht repariert werden, kann der Nutzer weiter arbeiten", sagt er. Muss eine Seite allerdings wiederhergestellt werden, erfolgt die Reparatur selektiv auf der betroffenen Seite, bevor sie für die Anwendung wieder zugänglich ist. "Ein Nutzer, der auf das System zugreift, muss eine gewisse Wartezeit in Kauf nehmen. Sie ist abhängig vom Nutzungsgrad der benötigten Seiten im System."
Die Informatiker haben ihre Methode bei existierenden Datenbanksystemen getestet. "Wir haben die Verfügbarkeit um bis zu zwei Neuner erhöht, das bedeutet, dass wir die im Beispiel angenommene Reparaturdauer von rund zwei Minuten auf etwa eine Sekunde reduziert haben", nennt Sauer als Ergebnis.
Sauer hat im Rahmen seiner Promotion "Modern techniques for transaction-oriented database recovery" die Technik und die dafür notwendigen Algorithmen entwickelt. Für diese Arbeit hat er nun den deutschlandweiten Dissertationspreis des Fachbereichs Datenbanken und Informationssysteme (DBIS) der Gesellschaft für Informatik (GI) erhalten.
COMPAMED.de; Quelle: Technische Universität Kaiserslautern