Datenmodelle haben eine wesentlich längere Lebensdauer als Software, welche Funktionen und Prozesse umfasst. Daher haben wir von Anfang an unseren Fokus auf die Datenqualität gelegt. Nach über 15 Mannjahren Entwicklung haben wir ein Tool entwickelt, welches den Bauplan einer Datenbank beschreibt, um sich damit stabil, konsistent, optimal und extrem schnell fehlerfrei zu replizieren.
Um zu verstehen, was das genau in der Praxis heißt, beginnen wir mit einer kleinen Einführung in die Welt der Datenbanken...
Datenbankmodell
Grundlage für die Strukturierung der Daten und ihrer Beziehungen zueinander ist das Datenbankmodell, das durch den DBMS-Hersteller festgelegt wird. Je nach Datenbankmodell muss das Datenbankschema an bestimmte Strukturierungsmöglichkeiten angepasst werden:
Vorteile von relationalen Datenbanken
Darum arbeiten wir ausschließlich mit relationalen Datenbanken wie MSSQL, PostgreSQL sowie ORACLE.
Jede Anwendungssoftware benötigt drei Systeme
Die Herausforderung bei mehreren Systemen: Die Migration der Modelle und Daten
Für neue Prozesse und Funktionen muss das Datenmodell verändert bzw. erweitert werden. Dies betrifft z.B. Tabellen, Fremdschlüssel, Indizes sowie deren Dateninhalte. Diese müssen im laufenden Betrieb auf das Testsystem und später auf das Produktivsystem migriert werden, möglichst effizient, also ohne Downtime der Systeme.
Und genau da kommen die Nachteile von relationalen Datenbanken zum Tragen
Fazit
Datenmodell-Migrationen sind aufwendig.
Die Lösung um nur Vorteile zu gewinnen: Unsere selbstbeschreibende Datenbanken mittels Metamodellen.
Um all diese Nachteile in der Praxis auszuräumen haben wir ein Metamodell entwickelt, welches sich selbst beschreibt und mit virtuellen Datentypen angereichert ist.
Damit erfolgt die Migration extrem schnell, zielsicher und fehlerfrei. Nicht nur das, sondern wir können auch die Inhalte problemlos systemübergreifend überführen, da wir Identitäts- sowie Kompatibilitätsdaten kennen und diese heranziehen können. Und wir können größere Migrationen auch automatisiert zu einem bestimmten System ausführen lassen, zum Beispiel in der Nacht, damit unter Tags die Performance nicht beeinträchtigt wird.
Um Fehler zu vermeiden, werden alle Datenbanken auf allen Systemen stündlich gecrawlt und so das Metamodell mit den real existierenden Datenbanken gegengecheckt. Was Sie davon haben? Maximale Stabilität, Agilität, Flexibilität, Effizienz für extrem schnelles Wachstum.
Hier ein kurzer Auszug, wie das Metamodell funktioniert:
Virtueller Datentyp bei ICONPARC
... entspricht dem realen Datentyp bei MSSQL
Problemstellung in bildlicher Darstellung:
Ergebnis aus unserer Metamodell-Lösung: