Entwicklertagebuch Jtl Bi Teil 1
Magnus Piekny & Martin Kuen Magnus Pienkny & Martin Kuen

Entwickler JTL-BI

Entwicklertagebuch JTL-BI – Unsere neue Business Intelligence-Lösung | Teil 1

„Kenne Deine Zahlen“ ist ein typischer Rat für Unternehmer. Denn nur wer die eigenen Unternehmenszahlen im Blick behält, kann Entwicklungen erkennen und daraus Entscheidungen zur strategischen Ausrichtung ableiten – für nachhaltigen Erfolg ist das essenziell.

Unser neues Produkt JTL-BI soll euch zukünftig all das ermöglichen. Da die Einsatzmöglichkeiten so umfangreich sind, haben wir unser Entwicklertagebuch in zwei Teile aufgeteilt: In dieser Woche gewähren wir euch zunächst einen Einblick in unsere bisherige Arbeit und stellen unser Datenbankmodell vor.

Nächste Woche wird es dann um die Verbindung zu Microsoft Power BI gehen und ihr werdet Gelegenheit bekommen, euch aktiv an der Entwicklung zu beteiligen.

Aber fangen wir einmal ganz von vorne an:

Was ist JTL-BI?

JTL-BI ist unsere Business Intelligence-Lösung, die euch dabei helfen soll, die Daten in eurem Unternehmen systematisch sammeln, auswerten und darstellen zu können. Alles mit dem Ziel, zahlengestützte und damit fundiertere Entscheidungen zu treffen, die euren Unternehmenserfolg voranbringen. Beispiele hierfür sind Kostensenkungen, Risikoreduzierung oder Wertschöpfung.

Kurz gesagt: JTL-BI liefert euch eine umfassende Übersicht über euer Unternehmen und damit mehr Kontrolle.

Wie grenzt sich JTL-BI von den Statistiken in JTL-Wawi ab?

Die Idee zu JTL-BI haben wir euch bereits in einem früheren Beitrag vorgestellt. Seitdem werden wir immer wieder gefragt, wie sich unser Projekt von den Statistiken in JTL-Wawi abhebt. Schließlich könnt ihr auch hier Unternehmenskennnzahlen einsehen.

Es gibt jedoch einen entscheidenden Unterschied: Die Statistiken in JTL-Wawi zeigen einzelne Kennzahlen, wie beispielsweise offene Zahlungen oder die Anzahl der Retouren und Bestellungen. JTL-Wawi setzt diese aber nicht in einen systematischen Analysekontext, wie sie ein Onlinehändler, Logistikleiter oder Sortimentsmanager langfristig für seine strategischen Entscheidungen benötigt.

JTL-Wawi Statistiken Die Statistiken in JTL-Wawi weisen nur vereinzelte Kennzahlen aus

JTL-BI hingegen stellt Informationen so zusammen, dass ihr Trendentwicklungen erkennen und als Geschäftsführer daraus einen Handlungsbedarf ableiten könnt.

Die Daten, die JTL-BI für euch sichtbar macht, stammen aus JTL-Wawi. Die Datenhaltung unserer Business Intelligence-Lösung läuft allerdings auf einer autonomen Datenbank, für die wir zunächst eine eigene Struktur schaffen mussten.

Eigene Datenbankstruktur für JTL-BI

Eine performante BI-Lösung kann nicht auf der Datenbank einer Warenwirtschaft arbeiten. Einerseits, weil hier andere Regeln für die Datenhaltung gelten. Andererseits, weil die angehängte Datenbank von JTL-BI die Arbeitsleistung von JTL-Wawi negativ beeinflussen würde – insbesondere bei größeren Unternehmen mit umfangreichen Datensätzen. Daher mussten wir eine eigene Datenbank(-struktur) schaffen.

Dies hat einen entscheidenden Vorteil: Durch die Entwicklung einer eigenen Datenbank werdet ihr zukünftig auch Fremdsysteme – wie beispielsweise Unicorn oder Facebook-Analytics – anbinden können, um diese Datensätze zu integrieren.

So funktioniert die Datenbank von JTL-BI

Das Datenbank-Design von JTL-Wawi und dem eines Data Warehouses wie von JTL-BI unterscheidet sich grundlegend: JTL-Wawi läuft auf einer normalisierten Datenbank, bei der die Attribute in mehrere Relationen so aufgeteilt sind, dass keine Redundanzen entstehen. Ziel einer solchen redundanzfreien Datenspeicherung ist es, Daten entfernen zu können, ohne dass es zu Informationsverlusten kommt. Eine normalisierte Datenbank wie von JTL-Wawi ist dafür ausgelegt, schnell Daten schreiben und nur in kleineren Mengen lesen zu können.

Ganz anders JTL-BI: Die Datenbank unserer Business Intelligence-Lösung haben wir nach einem Sternschema entwickelt, wie es für ein Data Warehouse üblich ist. Dabei haben wir sogar Schneeflocken und Galaxien aufgebaut, die speziell für große Datenmengen mit fast ausschließlich lesenden Zugriffen und nur seltenen Schreibzugriffen geeignet sind. Dazu haben wir die Daten in der Datenbank zudem mehrfach vorgehalten, um eine maximale Auswertungsgeschwindigkeit zu garantieren.

JTL-BI Datenbankmodell Komplett Das Datenbankmodell von JTL-BI

Auf dieser Datenbank führen wir die Standardauswertungen durch, welche wir dann in einer eigenen Benutzeroberfläche mittels einer browserfähigen Navigation darstellen. Doch dazu später mehr.

Der Abgleich zwischen JTL-BI und JTL-Wawi

Wie bereits erwähnt, greift JTL-BI auf einige der Daten aus JTL-Wawi zurück. Das macht einen regelmäßigen Abgleich notwendig, wie man ihn beispielsweise von JTL-Shop kennt. Anders als beim Shopabgleich werden die Daten an JTL-BI aber nur einmal am Tag übertragen – und auch nur solche, die sich seit dem letzten Abgleich geändert haben. Und so funktioniert es genau:

  • Mithilfe von JTL-Worker schickt JTL-Wawi die Daten an einen Webservice.

  • Dieser schreibt die Daten in eine Stage Datenbank.

  • Daraufhin folgt ein ETL-Prozess, bei dem die Daten mittels SQL Server Integration Services (SSIS) aufbereitet und für Microsoft Power BI optimiert werden.

  • Die Daten werden aus dem Data Warehouse in Microsoft Power BI geladen und dort angezeigt und auch gespeichert. Es ist also kein ständiger Zugriff von Power BI auf unsere Datenbank notwendig.

Diesen Abgleich haben wir nun so weit entwickelt, dass wir ihn mit ersten Pilotkunden testen können. Dazu erfahrt ihr in Teil 2 unseres Entwicklertagebuchs in der nächsten Woche mehr.

JTL-BI und Microsoft Power BI

Vielleicht seid ihr beim Lesen bereits über den Begriff „Microsoft Power BI“ gestolpert und wundert euch nun, was dieser externe Geschäftsanalysedienst mit unserer Business Intelligence-Lösung zu tun hat:

Microsoft Power BI gehört zu den populärsten Lösungen im Bereich Business Intelligence und wir nutzen dieses System als Frontend für JTL-BI. Mit unserem SQL-Server setzen wir bereits auf Microsoft, da war es naheliegend, auch JTL-BI direkt daran zu koppeln.

Das Dashboard von Microsoft Power BI

Microsoft stellt in Power BI Connectoren für unseren SQL Server zur Verfügung. Bei der Entwicklung unseres Data Warehouse haben wir darauf geachtet, die Daten so bereitzustellen, dass wir sie direkt in Power BI verwenden können. Das minimiert für euch die Nacharbeit bzw. das Nachjustieren im Programm. So haben wir beispielsweise auf SQL-Ebene eine Übersetzung technischer Begriffe vorgenommen und das Naming der Spalten so gewählt, dass sie sich direkt verstehen lassen.

Kleines Schmankerl für die Entwickler unter euch: In Power BI lassen sich auch Programmiersprachen wie Python oder R für statistische Auswertungen einbinden. Oder ihr könnt – vergleichbar mit den Workflows in JTL-Wawi – via Microsoft Power Automate auf Daten reagieren.

Der Einsatz von Microsoft Power BI birgt tatsächlich eine ganze Fülle an Vorteilen für die weitere Entwicklung von JTL-BI. Einer davon ist sicher, dass ihr den Dienst nicht nur als Cloud-, sondern auch als reine Desktopversion nutzen könnt. Doch dazu erfahrt ihr mehr in Teil 2 unseres Entwicklertagebuchs. Darin erklären wir euch dann auch, welche Pläne wir für die Anbindung von JTL-Shop und anderen Systemen für die Analyse haben. Seid gespannt!