Herausnehmen, Umwandeln und Einfügen (ETL) – nach dieser Herangehensweise werden seit den 70er-Jahren Daten migriert, als Unternehmen grössere Datenbankstrukturen anlegten. Trotz technischem Fortschritt hat sich das Prinzip nicht wesentlich verändert, es bildet bis heute einen Pfeiler der digitalen Datenverarbeitung.
Bei ETL-Migrationen stehen die Datenstrukturen im Vordergrund: Spalte X in Tabelle A muss in die Spalte Y der Tabelle B. Dazwischen können die Inhalte dieser Spalte mit beliebig vielen Arbeitsschritten transformiert werden, aber das einzelne Datenfeld bleibt dabei die zentrale Einheit. Dafür muss nicht zwingend eine Software eingekauft werden, ETL-Migrationen lassen sich auch leicht selbst programmieren.
Es ist also, als ob wir beim Zügeln eines einzelnen Büroraums das Bücherregal in eine Kiste packen, dann alle Ordner in eine zweite, die Stifte in eine dritte und so weiter. Beim Einpacken werden die Bücher, Ordner und Stifte so sortiert, dass sie in die neuen Regale und Schubladen passen. Dementsprechend einfach ist das Auspacken.
Wo ETL an seine Grenzen stösst
Was aber, wenn nicht nur ein Büroraum, sondern ein Dutzend Büroräume umziehen? Eine gemeinsame Kiste für alle Ordner, eine zweite für alle Bücher und eine dritte für Stifte zu packen würde ein Chaos verursachen. Die Bücher, Ordner und Stifte sind aus ihrem Zusammenhang gerissen und lassen sich nur mit langen Dokumentationen wieder zuordnen.
Anstatt jede Kategorie einzeln zu verpacken, sollte jeder Büroraum seine eigenen Kisten bekommen. So bleiben Bezug und Zusammenhang aller Gegenstände bestehen und müssen nach dem Umzug nicht wiederhergestellt werden. Das ist das Prinzip des objektorientierten Ansatzes. Er verpackt und verschiebt jeden Büroraum – jedes Objekt – im Zusammenhang. Jeder Raum hält sich zwar an die gleichen grundlegenden Packregeln, aber in Büro 3 tauchen alte Hängeregister auf, für die es eine eigene Regel braucht.

Für grosse Mengen einfacher Datenstrukturen ist ETL – ob eingekauft oder selbstentwickelt – also absolut sinnvoll. Denn ein grosser Vorteil von ETL gegenüber der objektorientierten Migration liegt in der Performance. Fachliche Verbindungen zwischen Datensätzen herzustellen, kostet Rechenzeit. Liegen also beispielsweise Millionen bis Milliarden von mehr oder minder unabhängigen Transaktions- oder Sensordaten vor, spielt die Leistung eine grosse Rolle. Mit anderen Worten: Das Einzelbüro kann auch eine ganze Lagerhalle sein, solange der Inhalt einfach strukturiert ist. Hier objektorientiert zu arbeiten wäre ineffizient.
Sobald aber komplexe fachliche Zusammenhänge, gewachsene Altsysteme, regulatorische Anforderungen und mehrere Zielsysteme ins Spiel kommen, stossen ETL-Lösungen an ihre Grenzen und aus ein paar Zeilen selbst geschriebenen Codes wachsen unübersichtliche, schwer wartbare Bibliotheken. Auch der rein tabellenorientierte Blick reicht dann nicht mehr aus.
Ein typisches Beispiel sind gewachsene Datenmodelle mit wiederkehrenden oder durchnummerierten Attributen. In solchen Fällen ist es oft nicht ausreichend, einzelne Spalten isoliert zu transformieren. Vielmehr muss verstanden werden, und wie sie als Objekt im Zielsystem korrekt abgebildet werden. Im Bild des Umzugs würde dies beispielsweise bedeuten, zu verstehen, dass sich Ordner A auf Handregister 1, 2 und 3 im gleichen Büro bezieht. Bei einer Versicherung wäre das etwa ein Schadensfall, der Police A, B und C betrifft, denen die Zahlungsverbindung 1 angeheftet ist.
Einfach oder komplex? Warum die Datenlage oft unterschätzt wird
Das Problem ist allerdings häufig: Datenmigrationen werden unterschätzt. Auf den ersten Blick sieht die Datenstruktur gerne einfach aus. Historien, Sonderfälle, Umsysteme und Produktvarianten machen eine Migration aber schnell zur Herausforderung. Wenn sie gar erst im Verlaufe des Projekts auftauchen, bedroht dies den Erfolg einer Legacy-Ablösung.


