Datenintegration stellt Unternehmen und IT-Abteilungen vor große Herausforderungen – und erzeugt bisher zudem oft horrende Kosten. Vor allem die Anbindung von Systemen über einzeln programmierte Schnittstellen ist zeit- und kostenintensiv. Und sie könnte mit standardisierten Programmen um ein vielfaches einfacher und preiswerter sein.
Wie Daten in hohem Grad automatisiert verarbeitet werden können, zeigt der folgende Ablauf. Einfache Bedienbarkeit mit Funktionen wie Drag & Drop, Multidevice-Fähigkeit, automatischem Feedback im Fehlerfall und kontinuierlicher Dokumentation ermöglichen eine hohe Flexibilität sowie schnelles Reagieren auf aktuelle Anforderungen. Und eine bessere Aufgabenstrukturierung zwischen IT und Fachabteilung.
Bevor die eigentliche Integration beginnt, sollten einige Vorarbeiten geleistet werden. Dazu gehört die präzise Erfassung der aktuell vorhandenen Daten und der Orte, an denen sie sich befinden. Geklärt werden muss natürlich auch, welche Daten grundsätzlich in einem anderen System benötigt werden. Also: Welche Daten sollten migriert werden? Und in welchem Ausgangsformat liegen sie vor? Ein guter Blick auf die Datenqualität hilft, im Vorfeld Fehler zu vermeiden. Welche Qualität haben die Daten und sollte diese eventuell optimiert werden? Sind diese Punkte geklärt, kann man den eigentlichen Ablauf der Integration angehen.
Schritt 1: Woher kommen die Daten?
Zunächst stellt sich die Frage, woher die Quell- oder Eingangsdaten kommen. Diese Aufgabe übernimmt im besten Fall ein Eingangsagent, der die zu verarbeitenden Daten entgegennimmt. Im einfachsten Fall handelt es sich dabei um eine reine Datenpumpe. Hier werden die Daten inhaltlich unverändert über einen oder auch mehrere sogenannte Antwort- oder Ausgangswege weitergeleitet. Ein Mapping (s. Schritt 3) findet also nicht statt. Die Integrations-Software sollte in der Lage sein, sich die Daten aktiv abzuholen (einmalig, aber auch wiederkehrend) oder zu warten, dass der Partner die zu verarbeitenden Daten anliefert (ereignisgesteuert, reaktiv). Man kann auch sagen, dass die Software wahlweise als Server oder als Client arbeitet. Natürlich sollte man auch die Zeiten für die Datenabholung und die Intervalle festgelegen können. Gut zudem, wenn es zu möglichst vielen Systemen direkt Anbindungen gibt, wenn WebDAV und SCP ebenso unterstützt werden wie etwa AS2, OFTP, X-400, SMTP, POP3 und IMAP, HTTP(S), FTP(S) und SFTP, SQL, MQTT oder AMQP.
Schritt 2: Welche Datenstrukturen werden benötigt?
Die zu den Quelldaten passende Quellstruktur wird im zweiten Schritt ebenso festgelegt wie die Dokumentenarten. Dazu gehören etwa CSV, Excel, XML, Feste Länge, DB (Datenbank), EDIFACT, SAP IDOC, X.12, BWA, API oder JSON. Die Dokumentenart bestimmt den Parser, also das Programm, das für die Umwandlung einer Eingabe in ein für die Weiterverarbeitung geeigneteres Format zuständig ist. Zusätzliche formatspezifische Angaben, die es so nur beim betreffenden Format gibt, sollten konfigurierbar sein, also etwa das CSV-Quoting bei CSV, die Datenblätter bei Excel, Schemadateien bei XML u.s.w. Es macht die Sache leichter, wenn die Integrations-Software auch mit Komprimierungsformaten wie zip oder tgz umgehen kann.
Schritt 3: Wie wird das Daten-Mapping aufgesetzt?
Im dritten Schritt konfiguriert man das sogenannte Mapping, also die gewünschte Zielstruktur sowie der Zusammenhang zwischen Quell- und Zielstruktur. Kurz: Hier werden also die Ziel- oder Ausgangsdaten erzeugt. Achten Sie darauf, dass Sie die zugeordneten Zieldaten zusätzlich über sogenannte Funktionketten manipulieren können. Überprüfen Sie, ob das Software-Produkt Ihrer Wahl eine möglichst große Anzahl vorbereiteter Funktionen beinhaltet. Diese unterstützen Sie dabei, selbst sehr komplexe Mappings, auch mit Hilfe von Variablen, Listen und Maps, zu erstellen. Der einfachste Fall ist das 1:1-Mapping. Dabei wird die Quellstruktur unverändert auf die Zielstruktur abgebildet. Dabei werden im Normalfall auch die Namen übernommen. Alle Quellfelder werden also den entsprechenden Zielfeldern zugeordnet.
Schritt 4: Möchten Sie Datenbanken beschreiben?
Eventuell möchten Sie Ihre Daten als Ziel in eine Datenbank übernehmen. In diesem Fall bestimmen Sie, ob und wenn ja welche Zieldaten in welche Datenbank-Tabellen geschrieben werden. Voraussetzung ist, Die betreffende Tabelle muss in diesem Fall natürlich in einem Schema angelegt werden, das Ihrer Software bekannt ist.
Schritt 5: Was soll die Datenintegration konkret leisten?
Arbeitet die Datenintegrations-Software lediglich als Datenpumpe, müssen Sie nichts weiter tun. Denn bei der reinen Funktion als Datenpumpe wird die Quelldatei unverändert ‚wie empfangen‘ ausgegeben. Möchten Sie Ihre Daten in andere Zielformate zu übernehmen, müssen Sie ein Mapping aktivieren. In manchen Fällen kann es passieren, dass für das Zielformat eine zusätzliche Bearbeitung benötigt wird. So könnte es sein, dass nicht alle Daten der Quelle im Zielformat benötigt werden. Oder diese im Zielformat sollen die Daten in anderer Struktur wiedergegeben werden. Prüfen Sie, ob Ihre Software diese Funktion beinhaltet. Manchmal sind die Anforderungen auch ein wenig komplexer. Etwa wenn für Quelldaten mehrere unterschiedliche Bearbeitungen in verschiedene Formate angedacht sind. Konkret: Daten aus Excel- oder CSV-Listen werden oft für die Aufbereitung von Aufträgen, Lieferscheinen oder Rechnungen in EDIFACT übernommen.
Schritt 6: Wie komplex ist Ihre Datenübertragung?
Manuell oder automatisch, auf Knopfdruck oder zu einer voreingestellten Zeit: Jetzt holt Ihre Software die Daten bei der Quelle ab oder sie wartet auf den Input aus den Quellsystemen und übermittelt die Daten auf einem oder mehreren Antwortwegen und in der gewünschten Form in das/die Zielsystem(e). Manchmal sollte Ihre Software in der Lage sein, noch einen Schritt weiter zu denken und Folgeprofile angestoßen.
Schritt 7: Was passiert im Fehlerfall?
Natürlich passierte das immer nur anderen – aber angenommen, bei der angestoßenen Datenintegration schleicht sich bei einem der Schritte 1 bis 6 ein Fehler ein, etwa weil eine Datenquelle nicht geliefert hat oder ein Zielsystem steht nicht zur Verfügung steht: Dann ist schnelles Eingreifen wichtig. Mit dem richtigen System erhalten Sie automatisch eine Nachricht, die Ihnen mitteilt, bei welchem Schritt eine vordefinierte Aufgabe nicht umgesetzt wurde. Klären Sie: Bietet Ihre Software die Funktion, für jeden Schritt eine Benachrichtigungsfunktion zu aktivieren, mit der Sie sicherstellen, dass Sie bei Fehlern wie der Nichtausführung eines Jobs eine Nachricht z.B. per Mail oder SMS an einen oder mehrere Adressaten erhalten? Um ganz sicher zu gehen, sollte Ihre Software zudem Quell- und Zieldatenbackups ermöglichen und jeden Job, ob fehlerfrei durchlaufen oder mit Fehler abgebrochen, eindeutig und fortlaufend dokumentieren.
Mit diesen sieben Schritten sollten Sie in der Lage sein, auf Basis einer klaren Struktur auch komplexe Integrationsthemen mit wenig Aufwand abzubilden und zu automatisieren. So schaffen Sie die Basis für eine klare Antwort auf die stetig wachsende Flut zu verarbeitender und zu integrierender Daten.
Steffen Brehme studierte ab 1988 in Tralee (Irland) Informatik. Nach Abschluss war er Anfang der 90er Mitgründer von SimpleWork (Warenwirtschafts-System), das man 96 verkaufte. Anfang 97 wurde er Interims-IT-Leiter bei Maxdata, Ende 97 war er Mitgründer der Beans AG (Shop-System), 2002 Mitgründer der Lobster GmbH (gut 100 MA, 1000 Kunden). Steffen ist seitdem Leiter Software-Entwicklung bei Lobster und der geistige Vater des Hauptprodukts Lobster_data, Standard-Software für hybride Datenintegration.
Lesen Sie auch die anderen Beiträge der Serie „IIoT“ von Steffen Brehme:
Teil 1: Handlungsbedarf bei der Datenintegration
Teil 2: IIoT-Einführung – Checkliste: Diese Hürden müssen sie nehmen
Teil 3: Erfolgsfaktor Integriertes Supply Chain Management
Teil 4: Kreativität 4.0 – Checkliste: Datenintegration als Treiber für IIoT
Teil 6: Vernetzung 4.0 – So gelingt die standardisierte Datenintegration
Teil 7: Über sieben Brücken – Datenmigration Schritt für Schritt