Database Award 2012 - Denic eG

Migration im Parallelbetrieb

18.06.2012 von Klaus Manhart
Die Denic eG hat im laufenden Betrieb eine Terabyte-Migration realisiert - ohne dass Datenbank-Nutzer davon etwas merkten. Gleichzeitig zeigte das Projekt, wie mit einem innovativen Datenmodell Langlebigkeit realisiert werden kann. Dafür wurde Denic beim Database-Award 2012 mit dem zweiten Platz belohnt.

Die Denic eG verwaltet mit der Top Level Domain .de den deutschen Adressraum im Internet und ist mit über 15 Millionen Domains die zweitgrößte Internet-Registrierungsstelle der Welt. Neben einem weltweiten Nameserver-Netzwerk mit 17 Standorten stellt die selbst verwaltete Genossenschaft alle erforderlichen Ressourcen für die Domain-Datenbank und das Registrierungssystem für .de und die deutsche Enum-Domain bereit. Auch alle Abfragedienste für .de und Enum liegen in der Verantwortung von Denic.

Wie viele andere Unternehmen musste auch die Denic im laufenden IT-Betrieb an mehreren Fronten kämpfen. Da war zum einen das massive Datenwachstum - die Daten von Kunden und Domains bewegen sich aktuell im Terabyte-Bereich. Gleichzeitig war es um die Qualität und Konsistenz der Daten nicht zum Besten bestellt. Und schließlich wuchsen die Anforderungen an den Betrieb und die Performance ständig an.

Marcos Sanz Grossón leitete das Migrations-Projekt bei der Denic und konnte die Datenbank-Performance so steigern, dass Registrierungs-anfragen bis zu zehnmal schneller bearbeitet werden.
Foto: Denic eG

Das alles hatte zur Folge, dass die aktuellen Datenbanken angepasst werden mussten. Die IT-Abteilung entschied sich deshalb für einen grundsätzlichen Neuentwurf der Datenbank. Mit dem Projekt "DB-Refactoring" sollte das veraltete Datenbankmodell erneuert werden, ohne die fachliche Funktionalität zu verändern oder gar den laufenden Betrieb zu beeinträchtigen. Konkrete Ziele des Projektes waren unter anderem, das Domainname-Wachstum und die Leistung der Kerndienste wie DNS besser zu unterstützen und die Integrität der Stammdaten zu verbessern.

Parallele Datenbanken

Bei der Migration der Sybase-Datenbank standen die IT-Experten der Denic vor mehreren großen Herausforderungen. Eine der größten: Die Umstellung von einem Terabyte Daten musste im laufenden Betrieb erfolgen. Eine längere Downtime konnte sich das Unternehmen nicht leisten, denn den Kunden hätten sonst keine Services mehr zur Verfügung gestanden.

Damit nicht genug: Ein weiteres Problem waren die vielen Anwendungen - Registrierungssystem, whois, Rechnungswesen - die auf die Datenbank lesend und schreibend zugreifen. Auch diese mussten auf die neue Datenbank migriert werden. "Die ganze Anwendungslandschaft in einem Rutsch zu migrieren, wäre aber ein sehr hohes Risiko", sagt der stellvertretende Leiter Entwicklung Ulrich Mayring. "Deshalb haben wir uns entschlossen, die Applikationen nach und nach umzustellen."

Der Migrationsplan sah vor, dass zunächst in beide Datenbanken geschrieben und nur aus der alten gelesen wird. Anschließend, so der Plan, erfolgt die Umstellung auf die neue Datenbank. Im letzten Schritt schließlich wird dann die alte Datenbank abgeschaltet. "Auf diese Art wurde eine transaktionssichere Migration erreicht", erklärt Marcos Sanz Grossón, Leiter Entwicklung bei der Denic. "Sicher war diese Migration deshalb, weil es immer Punkte gab, auf die man im Problemfall hätte zurücksetzen können."

Die Vorgaben hatten die Konsequenz, dass die neue und alte Datenbank längere Zeit im Parallelbetrieb laufen mussten. Das war zwar aufwändig, weil immer in beide Systeme geschrieben werden musste. Der gleichzeitige Betrieb zweier identischer Datenbanken garantierte aber, dass in beiden Systemen zur selben Zeit dieselben Daten gespeichert waren - und dies auch immer völlig konsistent. Dazu liefen im Hintergrund Jobs, die diese Konsistenz permanent prüften.

Einheitliche Zugriffsschicht

Für die Datenbank-Migration hat Denic beim Database Award einen zweiten Platz erreicht. "Mit dem Projekt wurde gezeigt, wie mit einem innovativen Datenmodell Langlebigkeit realisiert werden kann", heißt es in der Begründung der Jury.

Die neue Datenbank arbeitet nun mit einer einheitlichen Datenzugriffsschicht. Alle Anwendungen, die auf das System zugreifen, nutzen diese Komponente, die im Rahmen des Projekts entwickelt wurde. Bei der Migration wurden die Daten dabei immer dann übertragen, wenn sie im laufenden Betrieb "angefasst" wurden. Kam beispielsweise von einem Kunden ein Registrierungsauftrag, prüfte die Komponente, ob die vorhandenen Kundendaten bereits migriert worden waren. War dies nicht der Fall, wurden die Daten in die neue Datenbank geschrieben - und gleichzeitig eventuelle Änderungen in die alte gespeichert.

"Mit diesem Verfahren ist uns die Migration ‚on the fly‘ im laufenden Betrieb gut gelungen," erklärt Ulrich Mayring. "Zusätzlich haben wir noch einen Hintergrundjob laufen, der alle Daten migriert hat, die in dieser Zeit nicht angefasst wurden. Damit waren nach drei bis vier Tagen alle Datenbankinhalte vollständig im neuen System."

Inzwischen nutzen alle Anwendungen die aktuelle Datenbank, und die einheitliche Datenzugriffskomponente ist in allen Applikationen enthalten. Sollte das System irgendwann wieder umgestellt werden müssen, wären Änderungen nur in der zentrale Zugriffskomponente notwendig, in der Abweichungen vom SQL-Standard gut gekapselt sind. Alle Anwendungen könnten dann einfach mit einer neuen Version der Komponente ausgerollt werden - in den Applikationen selbst müsste nichts mehr modifiziert werden.

Das Ergebnis des Projektes "DB Refactoring" ist, dass die Datenqualität wesentlich gesteigert wurde. "Das Datenbankmodell wurde normalisiert, Redundanzen abgeschafft und die Integrität der Daten in der Datenbank somit erhöht", sagt Entwicklungsleiter Sanz Grossón. "Gleichzeitig konnte mit der Migration die Performance gesteigert werden, so dass beispielsweise Registrierungsanfragen jetzt bis zu zehnmal schneller bearbeitet werden."

Für die neuartige und hochprofessionell durchgeführte Datenbank-Migration hat Denic beim diesjährigen Database Award einen zweiten Platz erreicht. "Mit dem Projekt wurde gezeigt, wie mit einem innovativen Datenmodell Langlebigkeit realisiert werden kann", heißt es in der Begründung der Jury. "Gleichzeitig wurde das neue System mit einer Terabyte-Migration im laufenden Betrieb eingeführt - wobei die Benutzer überhaupt nichts gemerkt hatten."