Azurebasierte Reportinglösung

Titelbild: Azurebasierte Reportinglösung

Einführung

Ein typisches Problem der modernen Arbeitswelt ist die Menge an Rohdaten, welche interpretiert und verarbeitet werden müssen. Je größer die Datenmenge, desto schwerer fällt es, den Überblick zu behalten, KPIs zu definieren und Trends abzuleiten. Eine finale Entscheidungsfindung ist so kaum möglich.

Genau mit dieser Herausforderung kam ein Kunde auf uns als Alight Consulting GmbH zu:

„Wir nutzen ein Ticketsystem zur Steuerung und Unterstützung der Entwicklungs- und Nutzungsprozesse von Applikationen. Täglich anfallende Issues und Impacts werden in Form von Tickets erfasst und von der Analyse bis zur Realisierung der Lösung begleitet.

Wir benötigen eine tagaktuelle Auswertung der Daten in Form von Kategorisierung und Aggregation, visualisiert als Report. Wir benötigen Reports sowohl in statischer Standard-Form als auch interaktive Reports für ad hoc-Auswertungen.“

Regelmäßige Prozesse müssen immer weiter optimiert werden, um sie möglichst effizient, stabil, sicher und zielorientiert zu gestalten. Dazu müssen die anfallenden Daten beobachtet und analysiert werden, um daraus Entscheidungen und Maßnahmen abzuleiten.

Gemeinsam mit dem Kunden entstand eine Azure-basierte Lösung, die in mehrere Komponenten unterteilt ist:

  • Täglicher automatischer Import der relevanten Rohdaten aus einem externen Ticket-System
  • Transformieren und Strukturieren der Daten in einem Datawarehouse (DWH)
  • Nutzung von PowerBI-Reports (auf Basis der Daten im DWH)

Mit diesem System ist es möglich,

  • Den aktuellen Bearbeitungszustand von Aufgaben (Tickets) zu ermitteln
  • Auffälligkeiten zu identifizieren
  • Die Entscheidungsfindung zur Steuerung und Optimierung der Prozesse zu unterstützen

Die entwickelte Lösung nutzt moderne online-Technologien wie Azure Services und PowerBI. Hierdurch kann die Lösung aus fachlicher Sicht datensicher, automatisiert und erweiterbar gestaltet und ein zielorientiertes und modernes Monitoring ermöglicht werden.

Ein weiterer Vorteil sind durch den Einsatz von Online-Services ein marginaler infrastruktureller Wartungs- und Pflegeaufwand und mögliche Kostenminimierungen. Ein nachträglich umgesetztes neues Feature bestätigte die Technologiewahl: Eine Datenerweiterung innerhalb des Ticketsystems konnte schnell, unkompliziert und mit minimalem Aufwand adaptiert werden, um diese Daten in das finale Reporting mit einfließen zu lassen.

Lösungsarchitektur

Das nachfolgende Reporting beinhaltet standardisierte Reports, auf deren Basis die aktuellen Daten in einheitlicher Form dargestellt werden. Im Management können daraus resultierend entsprechende Auswertungen und Entscheidungsfindungen umgesetzt werden. Des Weiteren lassen sich die Daten aus verschiedenen Perioden der Vergangenheit vergleichbar gegenüberstellen.

Die Datenbank des Ticketsystems (M42 Spiegel-Datenbank) bildet die direkte Datenquelle. Die Staging Datenbank als Ziel für den täglichen Datenimport hat im Wesentlichen dieselbe Struktur wie die Matrix42-Datenbank. Auf diese Weise können die Daten möglichst schnell und unkompliziert übertragen werden. Die im Staging vorliegenden importierten Tagesdaten werden in umstrukturierter und angereicherter Form dem Data Warehouse (DWH) hinzugefügt. Somit enthält das DWH neben den aktuellen auch die Daten aus der Vergangenheit. Die Struktur des DWH ist speziell gestaltet und optimiert für nachfolgende Auswertungen, wie z.B. das PowerBI-Reporting. Die Reports lesen die Daten des DWH und stellen sie anwendergerecht in aggregierter Form dar.

Für Spezialisten: Verwendete Technologien

Azure SQL Datenbanken

Die bereits zuvor im Kapitel „Lösungsarchitektur“ vorgestellten Datenbanken

  • M42 Spiegel-Datenbank
  • Staging Datenbank
  • DWH-Datenbank

sind als Azure SQL-Datenbanken in der Cloud angelegt.

Azure Datafactory

Um den Datentransfer für den täglichen Import von Spiegeldatenbank über Staging in das DWH zu realisieren, wird der Azure Service einer Datafactory genutzt.

Um die Transformationsprozesse (Dataflows) zu gestalten, werden Linked Services (Connectors zu den Datenbanken) und Datasets (Abbild der Datensatzstruktur von Tabellen) eingerichtet und genutzt.

Die wesentliche Logik ist in den Dataflows enthalten. Dataflows können sowohl sehr einfache Teilprozesse sein als auch hochkomplexe Transformationen realisieren.

Abschließend werden einzelne Dataflows als eigenständige ETL-Prozesse in sogenannten Pipelines zu einer Ausführungseinheit aneinandergereiht.

Die hier dargestellte Pipeline ist eine Sequenz von 3 Dataflows.
Die Pipeline wird per Trigger 1mal täglich angestoßen und umfasst den gesamten täglichen Datenimport-Prozess.
 
Die einzelnen Pipeline Runs können in der Monitoring Section der Azure Data Factory eingesehen und analysiert werden:

Zudem lässt sich jede Pipeline auf die Ausführung seiner Teilprozesse untersuchen:

Azure Blob Storage

In unserem Projekt werden die Daten aus dem Altsystem für eine Migration in die neue Lösung übernommen. Diese Daten werden als Excelfiles exportiert. Die Files werden in einem Azure Blob Storage hochgeladen und fließen dann – ähnlich wie beim täglichen Import – via DataFlow bis ins DWH.

PowerBI Report

Die über die Prozesse einer Datafactory im Datawarehouse abgelegten Daten haben eine Struktur, die speziell auf das Analysieren, Aggregieren und Filtern der Rohdaten ausgerichtet ist. Visualisiert werden die Daten mit PowerBI-Reports.

Es gibt standardisierte Berichte zur periodischen Auswertung und Beurteilung der aktuellen Daten. Die aktuellen Daten können auch vergleichbaren Daten aus der Vergangenheit gegenübergestellt werden.

Ergänzend werden Berichte angeboten, um dem Nutzer auf interaktive Art eigene Datenanalysen zu ermöglichen (ad hoc-Reporting).

Die Gestaltung typischer Reports bedarf nur konfigurativer Schritte und kommt ohne Coding aus. Komplexe Datenaufbereitungen, die mit konfigurativem Standard nicht umsetzbar sind, können mit Programmierung (DAX) implementiert werden.

Die erstellten Reports werden zentral veröffentlicht und einem ausgewählten Nutzerkreis über Berechtigungen zur Verfügung gestellt.

Zusammenfassung und Ausblick

Benefits von Azure/Cloud-Technologie

Die in unserem Projekt zum Einsatz gekommenen Technologien wie Azure Datafactory und PowerBI ermöglichen Low-Code Lösungen, die keine Programmierkenntnisse erfordern. So können Lösungen schnell und kostengünstig entwickelt werden, wobei der Fokus der Entwicklung auf den umzusetzenden fachlichen Prozessen liegt.

Azure/Cloud Services bieten etliche Vorteile:

Cloud-Services werden zentral bereitgestellt, gewartet und weiterentwickelt. Der Nutzer kann sich auf den Provider verlassen, der die Stabilität des Systems gewährleistet. Die genutzten Services bieten eine sehr hohe Verfügbarkeit und Datensicherheit. Der Nutzer hat nur einen marginalen infrastrukturellen Wartungs- und Pflegeaufwand.

Aufgrund der Vielfältigkeit der Services und Technologien in der Azure Cloud respektive PowerPlatform ist der Einsatz von Third Party Tools weitestgehend in den Hintergrund getreten.

Des Weiteren sind Services skalierbar. So kann z.B. für Azure SQL Datenbanken aus verschiedenen Lizenzmodellen für Speichergröße, CPU-Nutzung, Performanceoptimierung ein geeignetes Modell gewählt werden. Damit können die Kosten in Abhängigkeit von den eigenen Anforderungen auf ein Minimum reduziert werden.

Es ergeben sich allerdings auch neue Herausforderungen:

Für den Aufbau einer AzureCloud und deren Nutzung ist ein Management notwendig, welches die eingerichteten Services und Ressourcen wartet und betreut und auch dafür Sorge trägt, dass neu hinzukommende Komponenten sich nahtlos in das bestehende System einordnen. So kann die zeitliche und technische Stabilität gewährleistet werden.

Übertragbarkeit der Lösung auf analoge Szenarien

Die oben für ein real umgesetztes Projekt geschilderte Lösung ist auf viele analoge Anwendungsbereiche übertragbar.

Es ist sehr häufig der Fall, dass hoch spezialisierte Tools/Produkte für die Unterstützung interner Prozesse genutzt werden. Allerdings haben diese Produkte oft nicht das Monitoring, welches der Kunde für seine Zwecke benötigt.

In diesen Fällen kann wie folgt vorgegangen werden:

  • Synchronisation der Daten in die Cloud
  • Alternativ: Zugriff aus der Cloud über Azure Data Gateway
  • Neustrukturierung der Daten
  • Anreichern der Daten mit weiteren kundenspezifischen Informationen
  • Zusammenführung in einem DWH
  • Auswerten/Reporten der Daten mit PowerBI