Business Case: Datenanalyse und Dashboards
Datenanalytik ist Komplexitätsreduktion!
Eine exemplarische Datenanalyse-Pipeline
Die folgende Skizze zeigt einen vereinfachten Ablauf für ein typisches Datenanalyseprojekt. Links stehen Eure Bestandssysteme, die vielleicht für alles mögliche optimiert sind, aber nicht für die Analyse, die Ihr gerade machen wollt. Und rechts steht das Dashboard, das Ihr Euch wünscht.
Quellsystem | Lokale Datenbank | Auswertedaten | Dashboard | |||
---|---|---|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
TB | Stunden | GB | Sekunden | MB | sofort | KB |
Wer bereits selbst Erfahrungen mit großen Datenbanksystemen machen durfte, weiß genau: Es geht nie schnell. Die Datenmengen sind so groß, die Quellsysteme so komplex – der Wunsch, mal schnell eine Auswertung zu machen, bleibt genau das: Ein Wunsch. An dieser Stelle setzt die Komplexitätsreduktion an: Die Terabytes an Daten sind meist gar nicht nötig, kein Mensch kann so viele Daten überblicken! Daher basieren die Auswertungen und grafische Dashboards fast immer auf sinnvollen Datenschnitten (Selektionen) und Zusammenfassungen (Aggregationen).
Der Trick besteht darin, diese für möglichst viele Anwendungsfälle vorzudenken und dann intelligent vorzuberechnen – zum Beispiel über Nacht, wenn das System weniger ausgelastet ist. Diese Datenschnitte werden nun in lokalen Datenbanken oder sogar direkt im Arbeitsspeicher zwischengeparkt, für die weitere Analyse mit Python z. B. in den DataFrames der Softwarebibliothek »pandas«. Von dort aus können in Sekunden die Daten abgezogen werden, die anschließend im Dashboard dargestellt werden. Im Allgemeinen findet hier ein zweiter Selektions- und Aggregationsschritt statt, bei dem die Daten nun für den konkreten Anwendungsfall zusammengezogen und für die Visualisierungen aufbereitet werden.
Beispiel-Dashboards
Visualisierungen für d3 als Open Source
Im letzten Schritt der Pipeline oben werden die Auswertedaten noch einmal für jedes Visualisierungs-Element separat aggregiert und ggf. selektiert. Die Bibliothek d3
liefert hierfür einige sehr mächtige und relativ intuitiv zu benutzende Aggregierungsfunktionen wie d3.group
und d3.rollup
.

srv.visbe.de/mapvis
(dark mode)Auf der Website srv.visbe.de/mapvis
hat die Visionsberatung einige Visualisierungen als Open Source veröffentlicht. Diese umfassen neben einer interaktiven Karten-Darstellung von Kennzahlen nach Postleitzahlen (PLZ2, s.g. Postleitregionen) und einer Treemap für die Darstellung hierarchischer Informationen auch ein Säulen- und ein Kreisdiagramm als filterbare Elemente. Diese konkreten Visualisierungen werden u.a. beim Statistikportal des Forschungsdatenzentrum Gesundheit am Bundesinstitut für Arzneimittel und Medizinprodukte verwendet.
Neben dem JavaScript-Code und CSS-Stilinformationen ist der Code der Seite selbst so aufbereitet und reduziert, dass Eure Eigenentwicklungen mithilfe dieses Beispielcodes hoffentlich ganz leicht umzusetzen sind. Viel Erfolg dabei!
Variantenbäume im Self-Service
Oftmals verbergen sich in den Spalten tabellarische Daten hierarchische Informationen. Eine Darstellung als Variantenbaum ermöglicht es, diese verborgenen Abhängigkeiten sichtbar zu machen und hilft so beim Verständnis der Daten. Der Variantenbaum ermöglicht eine intiutive Komplexitätsreduktion durch optische Ermittlung der richtigen Hierarchie-Ebene.


srv.visbe.de/treevis
(light mode)Damit Ihr es auf Euren Daten einmal ausprobieren könnt, bietet die Visionsberatung unter srv.visbe.de/treevis
eine kleine Webapp, in der Ihr Eure eigenen Daten als CSV-Datei einlesen könnt. Die komplette Anwendung wird lokal bei Euch im Browser ausgeführt, die Daten werden also nicht auf fremde Systeme hochgeladen. Damit die Baumdarstellung übersichtlich bleibt, könnt Ihr direkt auf der Seite in einer Tabellenansicht einzelne Spalten aggregieren oder ausdifferenzieren sowie ein- und ausblenden.
Der Variantenbaum ist eine SVG-Datei und kann als solche heruntergeladen werden.