Automatisierte Marktpreisanalyse
Zusammenfassung
Meesenburg Großhandel KG wurde vor bereits 250 Jahren gegründet. In den vergangenen Jahren hat das Unternehmen bereits drei industrielle Revolutionen durchlebt und sich stets den Marktbedingungen angepasst. So stellt sich Meesenburg ebenfalls den aktuellen Veränderungen von Digitalisierung und Nachhaltigkeit aktiv gegenüber. Mit der automatisierten Marktpreisanalyse gelingt es dem Unternehmen ihren Partnern und Kunden marktorientierte Preise anbieten zu können.
Die Herausforderung
Der Online Handel bietet den Kunden eine Möglichkeit, sich schnell einen Überblick über die aktuellen Marktpreise eines Produktes zu verschaffen und die Angebote von unterschiedlichen Händlern zu vergleichen. Um ihre Kunden dennoch vom Kauf bei Meesenburg überzeugen zu können, strebt das Unternehmen neben vielen Services und Kundenvorteilen eine marktorientierte Preisgestaltung durch eine interne Vergleichsplattform an.
Die stetig wachsende Anzahl an Online-Händlern und die steigende Affinität der Kunden zur Nutzung von digitalen und automatisierten Beschaffungsmöglichkeiten stellt das Unternehmen vor neue Herausforderungen in der Preisbildung.
Um den Markt ausreichend einschätzen zu können, bedarf es einer digitalen Plattform zum schnellen und effizienten Vergleich der Marktpreise. Für eine realistische Einschätzung des spezifischen Sortiments von Meesenburg, soll eine interne Vergleichsplattform auf Basis der Sortimentsdaten von Meesenburg erstellt werden.
Die Lösung
Bei der Bildung von marktüblichen Preisen wurde zunächst evaluiert, über welche Quellen die Informationen bezogen werden können. Hierbei wurde sich auf öffentlich zugängliche Datenquellen beschränkt. Eine Herausforderung war hierbei, dass die Informationen dieser Datenquellen unstrukturiert und in Form unterschiedlicher UI’s ausgespielt werden. Um die gewünschten Informationen normalisiert in einer internen Plattform anzeigen zu können, wurden Quellen spezifische Web Crawler implementiert, welche serverless in einem AWS Fargate Cluster betrieben werden. Die Crawler durchsuchen die Quellen in regelmäßigen Abständen und extrahieren über den HTML DOM Tree die gewünschten Informationen.
Eine Herausforderung hierbei waren die hoch individuellen Strukturen der einzelnen öffentlichen Quellen. Neben der direkten Suche einer EAN wurden auch vollständige Kategorie Bäume eingelesen, um alle Produkte einer Quelle zu indizieren. Bei einigen Quellen handelt es sich um eigene Marktplätze, die ebenfalls die Preise verschiedener Händler aggregieren sowie Staffelpreise ausspielen. Die erfassten Daten wurden aufbereitet, normalisiert und in einer AWS DynamoDB abgelegt.
Um die Anforderung zu bedienen, dass die Daten über eine API (API First Approach) bereitgestellt, aber zusätzlich auch visuell aufbereitet den Mitarbeitern zur Verfügung gestellt werden sollen, wurde eine One Page Application mit dem Angular Framework implementiert und über eine REST API über ein API Gateway bereitgestellt. Die Business Logik wird hierbei vollständig in AWS Lambdas (Function as a Service) abgebildet.
Das Ergebnis
Im Zuge dieses Projektes wurde eine Web Plattform für die interne Nutzung erschaffen, welche es ermöglicht, die Preise verschiedener Quellen zeit-serialisiert miteinander zu vergleichen. Hierfür wurden die verschiedenen Staffelpreise sowie die einzelnen Angebote der Quellen erfasst und strukturiert. Mit ChartJS wurden diese Informationen visuell aufbereitet und als interaktive Charts bereitgestellt.
Zusätzlich können alle Informationen dieser Vergleichsplattform für die programmatische Nutzung über eine REST API abgerufen werden. Die Watchlist der Produkte lässt sich über die API administrieren.
Es wurde eine intuitive Vergleichsplattform geschaffen, die es den Mitarbeitern ermöglicht, die aktuellen Preise zu vergleichen und Referenzwerte für die Bildung der Preise zu erhalten. Zudem ist es durch die serialisierte Datenerfassung möglich, Trends zu identifizieren und Prognosen zu stellen.
Die Vergleichsplattform wird als Serverless Application bei AWS betrieben.