Die Herausforderung
Im Rahmen von Digitalisierungs- und Modernisierungsprojekten stellen Migrationen zwischen Systemen eine große Herausforderung dar. Das Mapping von Datenschemata ist dabei ein zeitaufwendiger und fehleranfälliger Prozess in der Entwicklung. In den meisten Fällen wird das Mapping manuell für jedes Feld einzeln implementiert. Für die korrekte Umsetzung ist eine detaillierte Kenntnis der Domänenstruktur des Altsystems sowie des Neusystems notwendig.
Warum existierende Frameworks scheitern
Die Erfahrung zeigt, dass herkömmlich automatisierte Mapper oftmals die Erwartungen nicht erfüllen. Zum Beispiel weil die Feldnamen zwar semantisch ähnlich, begrifflich aber unterschiedlich sind. Somit scheitern sie schon häufig an kleineren Unterschieden wie bei firstName – givenName oder lastName – familyName. Solche begrifflichen Unterschiede lassen sich auch in anderen fachlichen Domänen finden.
Warum also nicht ein intelligentes, domänen-spezifisches Mapping konzipieren? Auf Basis von Domänen-Know-How sollen solche Unterschiede selbständig aufgelöst oder zumindest mögliche Mapping-Vorschläge gemacht werden. Die wiederholende Entwicklung solcher Anforderungen wird vereinfacht und die Fehleranfälligkeit minimiert.
Mit neuronalen Netzen zum Erfolg
Das ontologiebasierte Mapping basierend auf dem Ansatz der künstlichen Intelligenz bietet hierfür großes Potential. Dieses System lernt die Strukturen in den Daten der zusammengehörigen Feldnamen und Entwickler:innen erhalten beim Mappingprozess eine entscheidende Unterstützung. Denn es wird bereits bei der Implementierung eine Zuordnung von Quellschema zum Zielschema vorgeschlagen, die nach einer Einlernphase auch semantisch ähnliche, aber inhaltlich unterschiedliche Feldnamen automatisch erkennt.
Für das Einlernen des Modells kommt das Konzept des Transfer Learnings mit einem BERT Sprachmodell zum Einsatz. Hierbei muss das Modell nicht von Grund auf neu eingelernt werden, sondern es wird ein bereits für ähnliche Aufgaben eingelerntes Modell feinabgestimmt. Beispielsweise eines, das die Erkennung von inhaltlich gleichen Sätzen, Wörtern oder Ausdrücken gelernt hat. Diese Fähigkeit wird auf das Mapping von Feldern übertragen. Auf diese Weise werden der Rechenaufwand deutlich reduziert und die Ergebnisse verbessert.
Ein erstes Ergebnis: Bei einer Gesamtmenge von 1030 Feldern konnten nach Einlernen 1014 korrekt zugeordnet werden. Es hat also bei über 98 % ein automatisiertes, intelligentes und korrektes Mapping stattgefunden. Im Vergleich zu bereits bestehenden Lösungen ist das eine etwa doppelt so hohe Erfolgsquote.
Die wichtigsten PoC-Features
- Trainiertes Modul für intelligentes Mapping als containerisierte Anwendung
- Integration mit Java 17
- Automatische Erstellung des Object-Mapping mit Hilfe von MapStruct
- Keras-Modell als grundlegende Basis
Autor & Entwickler: Chris Danny Swiatly