Moduldokumentation ETL

Das SuperX-Modul ETL liefert keine neuen Auswertungen, sondern erweitert das SuperX-Kernmodul um komfortablere Gestaltung und Bedienung von Laderoutinen im Browser oder per Kommandozeile.
Aktuelle Version und Verfügbarkeit
Aktuelle Version:
0.5
Das Modul ist unter CampusSource-Lizenz verfügbar und kann hier heruntergeladen werden. Support bekommen Sie hier.
Nutzen
Unser ETL-Modul macht, anders als im Bild, Ihre Transferroutinen leicht, schnell & komfortabel.
Viele Hochschulen entwickeln derzeit eigene Masken und Funktionalitäten (Sichten etc.), was direkt zu den neuen Wünschen führt.
- Die Quellcodes in einem "menschenlesbaren" Format zu speichern und zu versionieren.
- Die Quellcodes von einer Säule (z.B. Entwicklungssäule) zu einer anderen "Säule" (z.B. Produktivsystem) zu transferieren.
Zu diesem Zweck wurde im neuen SuperX-Modul Laderoutinen (ETL-Modul) eine Browseroberfläche geschaffen, die folgende Aktivitäten ermöglicht:
- Übernahme von "normalen" Laderoutinen in die Datenbank
- XML-Exporte und Importe von Konfigurationen
- Masken und anhängige Tabellen (Metadaten, Stylesheets, Menüs)
- Ausführungssteuerung von Laderoutinen im Browser
Perspektivisch
Perspektivisch soll dieses SuperX-Modul auch weitere Funktionialitäten bieten, z.B.
- Säulenübertragung von Konfigurationen (Masken, Sichten, Repository-Variablen etc.) via Browser oder Kommandozeile
- Ausführung und Kontrolle von Laderoutinen im Browser
- Ladeschritte wiederverwertbar machen (z.B. Entladen Prüfungen in Hauptladeroutine Studierende und Unterladeroutine "Lade Prüfungen aus POS")
- Zusammenlegung der Install/Upgrade Jobs in einen Job
- Idempotenz der Ladejobs, und Fernsteuerung der Schritte mit Administrationstools wie Ansible
- Laderoutinen in Schleifen, z.B. einen Bericht über mehrere Organisationseinheiten ausführen, nach Excel Speichern, und per Mail versenden
Derzeit arbeiten Laderoutinen weitgehend unsichtbar, Sie "sehen" höchstens einen Forschrittsbalken, und bei Bedarf schwer lesbare Logausgaben. Es wird häufig bemängelt dass die Laderoutinen intransparent sind. Das wollen wir verbessern, die Laderoutinen sollen sich "lesen lassen wie ein Roman":
- Es wird zur Laufzeit beschrieben, was passiert. Da das "Buch" meistens im Keller steht, benötige ich Fernzugriff (->Logausgabe im Browser)
- Es gibt Kapitel und Unterkapitel, die auch einzeln lesbar bzw. lauffähig sind (-> Teile der Laderoutinen einzeln starten)
- Es gibt für jedes Kapitel Leitfragen bzw. "Soll"-Zustände, die wir erreichen wollen (-> Füllstatus von Tabellen etc.)
- Bei jedem Kapitel weiß ich, ob es es eher bis zum Ende lesen sollte oder jederzeit abbrechen kann (-> stoppen oder weitermachen, auch im Fehlerfall)
- Ich kann auch wählen ob ich ein Kapitel genau lese oder nur überfliege (-> Loglevel)
- Auch kleine Unterbrechungen sollten möglich sein, d.h. ich stoppe das Lesen / die Laderoutine, und
- schaue mir Details in Ruhe an (-> Tabelleninhalte)
- Ich kann mir Seitenzahlen und Kapitelnummern notieren als Lesezeichen, wo ich nochmal nachschauen kann (-> Ladeschritt-Nummern oder Identifier, über die ich sie ansteuern kann)
- Es werden für jede Seite Metadaten zur Laufzeit geschrieben, z.B. Laufzeiten, Datenmengen -> Verbessertes Logging
- Teile des Codes lassen sich einfach herauskopieren, um z.B. ein Einzelschritt-Debugging zu leisten.
- Kapitel die mich nicht interessieren kann ich überspringen -> Ladeschritte deaktivieren
- Ich kann eigene Notizen hinter jedes Unterkapitel heften -> Laderoutinen um eigene Mini-Laderoutinen erweitern, z.B. Mailversand oder hochschulspezifische Anpassungen
- Ich möchte auch ein "Autorensystem" haben, um eigene Bücher (->Laderoutinen) zu schreiben/zu bauen. Die Möglichkeiten sollten von Kettle Jobs bis hin zu eigenen Java-Klassen reichen, die über ein Interface eingebunden werden können
- Dafür benötige ich Werkzeuge, wie Stift und Papier (->ETL-Ladeschritte, z.B. Upload von Excel oder CSV)
- Zeitgesteuerter Aufruf analog zu Cron/Quartz
Dokumentation und Ressourcen
Benutzungsanleitungen
Administrative Anleitungen
Versionshistorie
Version 0.5
25.7.2025
- Bearbeitungsformulare von Ladeschritten verbessert
- Übertragung von Sichten, QA-Testfällen und RPTA-Spaltenlayouts
- Verbesserung des ETL-Management
- Dialog zur Auswahl von Tabellengruppen (Masken, Sichten etc.)
Version 0.4
15.5.2024
- Maskenexport
- Beim Exportieren gibt es jetzt einen "Herunterladen"-Button, der ein XML produziert, das unbeeindruckt vom jeweils verwendeten Betriebssystem und Browser exakt dem Format entspricht, das auch die Kommandozeile erzeugt. Die ist für Versionierungstools wichtig, z.B. den git-Abgleich. #3
- Auch Metadaten zu Stylesheets mit Kernmodul 5.0 werden nun exportiert und geladen #2
- Kopieren-Button funktioniert auch unter Firefox, inkl. Tooltip #2
- Kompatibilität zu HISinOne-BI verbessert.
- Das ETL Modul war mit HISinOne-BI 2023.12 oder höher nicht kompatibel, wg. geänderter Klassen mit gleichem Namen im Kernmodul. #4
- Beim Tomcat Start unter HISinOne-BI werden alle Jobs gelöscht, so dass das ETL Modul hier nicht nutzbar war. Dies wurde korrigiert.
Version 0.3
15.08.2023
- Anpassungen ans Kernmodul 5.0
- XML Export von Masken in Firefox und Chrome identisch (vorher war Leerzeichen-Differenz)
Version 0.2
27.8.2021
- Laderoutinen zum Entladen und Hochladen von Masken enthalten auch
- Themenbaum-Eintrag
- Zugehörige Stylesheets
- Zugehörige Stylesheet-Feld-Vorbelegungen
- Paket im Download-Bereich, Administrations-Dokumentation
Version 0.1b
6.1.2020
Die Features:
- Laderoutinen zum Entladen und Hochladen von Masken auf der Basis von git-freundlichem XML
- Kommandozeilenaufruf des Entladens und Hochladens