Dr. Günter Goetz
Leiter
Software Engineering
0221 78887-420
E-Mail schreiben
Hochverfügbare Daten in relationalen Datenbanken

Da ohne IT in unserer computergestützten Arbeitswelt nur noch wenig funktioniert, gilt es, Systemunterbrechungen auf wenige Sekunden oder wenigstens Minuten zu reduzieren. Bei der Sicherstellung dieser auch als Hochverfügbarkeit bekannten Anforderung sind mehrere kritische Punkte zu beachten. Dazu gehört auch der Datenpool des Unternehmens, wie etwa SQL-Datenbanken, die sich als Standard im Bereich der relationalen Datenbanken durchgesetzt haben.*
Fast alle wichtigen Anwendungen - vom ERP-System bis zum Webauftritt - greifen auf SQL-Datenbanken zu. Fällt die Datenbank aus, kann das den kompletten Ausfall wichtiger Systeme und die Unterbrechung der Geschäftsprozesse bedeuten. "Es gibt viele Faktoren, die zu einem solchen Ausfall führen", erläutert Dr. Günter Goetz, Leiter des Software Engineerings bei INSIGMA. "So kann z. B. nach einem Hardwarecrash der Zugriff auf Daten nicht mehr möglich sein. Dann genügt das einfache Backup einer Datenbank nicht, da der Wiederherstellungsprozess zu lange dauert."
Hochverfügbarkeit herstellen durch Clustering und Replikation
Um die Hochverfügbarkeit von Datenbanken sicherzustellen, greifen IT-Dienstleister in der Regel auf zwei Verfahren zurück: Clustering und Replikation. Günter Goetz: "Beide Verfahren setzen mindestens zwei Server ein, von denen der eine aktiv ist, und der andere im Stand-by-Modus verharrt." Beim-Clustering-Verfahren liegen die Daten unabhängig vom Server-Cluster auf einem externen Speichersystem, nur der aktive Server greift darauf zu. Fällt dieser aus, so wird innerhalb einer Minute auf das andere Gerät umgeschaltet. Die Daten sind identisch, da sie auf einem externen System liegen. Clustering vereinfacht auch das Einspielen von Updates auf laufenden Systemen, da so während des Updates meist andere Komponenten einspringen können. Natürlich sind in einer solchen Konfiguration auch die Speichersysteme redundant und hochverfügbar angelegt, etwa durch ein SAN-Cluster, um ein Höchstmaß an Ausfallsicherheit zu garantieren.
Beim Replikationsverfahren sind auch die Daten jeweils auf den einzelnen Datenbankservern vorhanden. Der aktive Server – auch Publisher genannt – kommuniziert mit dem Stand-by-Server, dem sogenannten Subscriber. Wird die Datenbank auf dem Publisher verändert, dann wird auch die Änderung an den Subscriber übertragen und dort gespeichert. Das geschieht – je nach der angewendeten Replikationsmethode – entweder sofort oder in regelmäßigen Zeitabständen. Bei einem Ausfall kann der Stand-by-Server mit der replizierten Datenbank alle Funktionen übernehmen. Dr. Günter Goetz erwähnt verschiede Replikations-Möglichkeiten: "Es gibt mehrere Verfahren, z.B. die Snapshot-Replikation oder die Transaktionale Replikation. Welches man einsetzt, richtet sich nach dem Bedarf des Auftraggebers, z. B. welche möglichen Datenverluste ggf. tolerierbar sind."
Hochverfügbarkeit herstellen
Um den Bedarf zu ermitteln, muss zunächst eine Analyse der Aufgabenstellung und der erhaltenen Daten erfolgen. Hierbei spielt auch der Grad der Hochverfügbarkeit eine Rolle, also die Frage, wie schnell die Daten wieder verfügbar sein müssen. Da die Softwareentwickler von INSIGMA mit Microsoft SQL Server, My SQL, Oracle und DB2 die großen, auf dem Markt gebräuchlichen, Datenbanksysteme beherrschen, kann der ermittelte Lösungsansatz dann gleich von Spezialistenhand umgesetzt werden.
* SQL (Structured Query Language) ist eine Abfragesprache für relationale Datenbanken, auf der die bekannten Datenbankverwaltungssysteme aufsetzen.

Dr. Günter Goetz
Leiter
Software Engineering
0221 78887-420
E-Mail schreiben
Wir beherrschen die führenden Datenbankmanagementsysteme