Überblick
Enbrea hat es sich zum Ziel gesetzt, mit möglichst vielen Fachanwendungen Daten austauschen zu können. Bei der Implementierung haben wir uns von folgenden Grundannahmen leiten lassen:
- Viele Fachanwendungen sind immer noch Desktop-basiert.
- Viele Fachanwendungen besitzen lediglich einen einfachen Austauschmechanismus in Form von CSV-Exporten oder -Importen.
- Einige Fachanwendungen erlauben den direkten Zugriff auf die zugrundeliegende SQL-Datenbank
- Selbst Fachanwendungen mit API-Schnittstelle erlauben in der Regel keinen Echtzeitabgleich oder Differenzabgleich.
- Für einige Schulen heißt die Fachanwendung immer noch Microsoft Excel.
Also haben wir uns überlegt, welche Schnittstelle zum Importieren von Daten nach Enbrea und zum Exportieren von Daten aus Enbrea am effektivsten für unser Vorhaben ist. Das Ergebnis ist ein standardisiertes Zwischenformat, das Enbrea CSV Format (kurz ECF).
Zwischenformat bedeutet, dass alle externen Datenquellen zunächst in das ECF-Format exportiert werden. Diese ECF-Dateien werden anschließend nach Enbrea importiert. Umgekehrt funktioniert dies genauso: Enbrea exportiert seine Daten nach ECF, und von dort geht es weiter in die Zieldatenquellen.
Quelle und Ziel beim Datentransfer werden also entkoppelt. Enbrea kann sich ganz auf die Verarbeitung der ECF-Dateien konzentrieren, während eine kleine Konsolenanwendung namens Enbrea Cli dafür verantwortlich ist, ECF mit einer Quell- oder Zieldatenquelle zu verbinden.
OK, wie genau funktioniert jetzt der Datenabgleich? Die folgende Infografik visualisiert das Zusammenspiel aller Komponenten.
[Neue Infografik muss noch erstellt werden]
Neben der Enbrea-Instanz sind es die zwei Komponenten ECF und Enbrea Cli, welche im Datenaustausch involviert sind. Beide Komponenten stellen wir im Folgenden kurz vor.
ECF Dateien¶
Das Enbrea CSV Format (kurz: ECF) basiert auf einem klassischen CSV-Format. Warum CSV? Die Daten in Enbrea sind relationaler Natur und relationale Datenstrukturen lassen sich prima in CSV abbilden. Außerdem lassen sich CSV-Daten sehr einfach in Excel erstellen und bearbeiten, d.h. jeder, der Excel bedienen kann, ist in der Lage individuelle Daten mit Enbrea auszutauschen.
Enbrea besitzt eine dedizierte API zum Hoch- bzw. Herunterladen von Daten im ECF-Format. Die wichtigsten API-Befehle sind:
- Hochladen von ECF-Daten
- Einmischen dieser ECF-Daten in die Enbrea-Datenbank
- Extrahieren von Daten aus der Enbrea-Datenbank
- Herunterladen dieser Daten im ECF-Format
Das Hochladen bzw. Herunterladen von ECF-Daten erfolgt immer im Kontext eines vorgegebenen Enbrea-Zeitraums, d.h. es werden nur zeitraumunabhängige Daten sowie Daten aus diesem Zeitraum berücksichtigt.
Die ECF-API kann direkt programmiert werden. Sehr viel einfacher ist jedoch die Nutzung des Enbrea Client Interface (Enbrea CCliLI).
Enbrea Cli¶
Das Enbrea Client Interface (kurz: Enbrea Cli) ist eine Konsolenanwendung, die den Workflow zwischen Enbrea und externen Fachanwendungen orchestriert. Die Installation ist einfach und wird hier im Detail beschrieben.
Diskussion¶
Huch, das klingt aber alles ziemlich kompliziert!
Nun, Datenabgleiche sind leider oft kompliziert. Wir haben versucht, die Komplexität aufzusplitten:
- Fachanwendungen haben keine Kenntnis über Enbrea.
- Enbrea hat keine Kenntnisse über externe Fachanwendungen, es konsumiert (Import) bzw. generiert (Export) lediglich ECF-Dateien.
- Der Mediator zwischen Enbrea und den Fachanwendungen ist Enbrea Cli. Diese Konsolenanwendung exportiert Daten aus Fachanwendungen und importiert diese im ECF-Format nach Enbrea, und umgekehrt.
Diese Aufteilung in einzelne, unabhängige Komponenten erlaubt ein sehr hohes Maß an Flexibilität:
- Für die Unterstützung neuer Fachanwendungen müssen wir lediglich die Abbildung von bzw. in das ECF-Format implementieren, es ist in der Regel keine Änderung in Enbrea selbst nötig.
- Die Fachanwendung benötigt keinen Zugriff auf Enbrea als Webanwendung und Enbrea benötigt keinen Zugriff auf die Fachanwendung. Das ist besonders dann wichtig, wenn die Fachanwendung in einem anderen Netzwerk (z.B. Verwaltungsnetzwerk) installiert ist als Enbrea (z.B. cloudbasiert).
- ECF-Dateien als Zwischenformat erlauben die Dateninspektion durch externe Tools (z.B. Excel). Das kann bei der Ursachensuche von unerwarteten Synchronisationsproblemen von enormer Hilfe sein.
- ECF-Dateien als Zwischenformat erlauben die Mutationen der Daten als optionalen Zwischenschritt. Beispielsweise könnten Daten, die aus einer bestimmten Fachanwendungen kommen normalisiert werden (z.B. doppelte Einträge entfernen).
- Obwohl unterschiedliche separate Komponenten beteiligt sind, kann alles bequem per Kommandozeile gesteuert und bei Bedarf auch vollständig automatisiert werden.
- Der gesamte Workflow kann sehr leicht an eigene Bedürfnisse angepasst oder erweitert werden.
Wie kann ich starten?¶
Wenn Sie Ihre Daten nach Enbrea importieren möchten, empfiehlt sich eine Herangehensweise in drei Schritten:
-
Zunächst müssen Sie Ihre Enbrea-Instanz auf den Import vorbereiten. Das Kapitel Vorbereitung zeigt Ihnen, was bereits vor der Einrichtung von Enbrea und dem Datenaustausch zu berücksichtigen ist-
-
Im nächsten Schritt installieren Sie Enbrea Cli lokal auf Ihrem Rechner oder in Ihrem Netzwerk. Das Kapitel Installation zeigt Schritt für Schritt, was zu machen ist.
-
Danach sucht Sie sich das passende Kapitel zur Fachanwendung heraus. Dort wird Schritt für Schritt erklärt, wie die Datensynchronisation eingerichtet werden muss: