Blog der SHI GmbH

Online-Shop Optimierung – Teil 2

Online-Shop Optimierung mit Daten aus User-Verhalten – Teil 2

Nachdem im ersten Teil der Blog-Serie dargestellt wurde, dass das Tracken von User-Interaktionen innerhalb eines Online-Shops für unterschiedlichste Zwecke lohnenswert ist, geht es in diesem zweiten Teil darum, wie diese am besten mitgeschnitten und gespeichert werden können.

 

Integration des Trackings in eine Shop-Eigenentwicklung

Hierbei kommt es immer auch auf die Infrastruktur an, in die ein Online-Shop gebettet ist. Hat man einen eigens entwickelten Online-Shop, ist man technisch gesehen flexibler, die Informationen einer User-Interaktion zusammenzustellen und an einen Datenspeicher zu schicken. Frei von Aufwand ist dies natürlich nicht, jedoch hat man in diesem Fall alle Freiheiten, eigene Funktionen in die Webanwendung zu integrieren, die auf Klicks, Bestellvorgänge, Suchanfragen etc. reagieren, die Datensätze zusammenstellen und an ein Speichersystem übertragen.

Verwendung eines JavaScript-Trackers

Hat man diese Möglichkeit nicht, bietet sich in der Regel der Einsatz eines JavaScript-Trackers an. Dies hat den Vorteil, dass bei Änderungen oder Weiterentwicklungen nicht ganze Webapplikationen neu ausgerollt werden müssen, da Änderungen in der Verwendung von JavaScript immer etwas leichtgewichtiger sind.

Einer dieser Tracker ist Snowplow, eine komplette Analytics-Plattform, die sich auch mit anderen Technologien wie Spark oder Hadoop integrieren lässt und somit äußerst mächtig ist.
Natürlich kann auch Google Analytics zum Tracken von User-Aktionen verwendet werden. Unsere Erfahrungen zeigen jedoch gewisse Einschränkungen, wenn es eben nicht nur darum geht, diese zu historisch auszuwerten (Descriptive Analytics), sondern diese auch z.B. für Recommendations zu verwenden. Denn in diesen Fällen sind Daten in großer Menge nötig, die mittels anderer Frameworks, wie z.B. Apache Spark, verarbeitet werden.

Der vielleicht wesentlichste Nachteil von Google Analytics ist, dass die Daten nicht mehr In-House, sondern außer Haus gegeben werden. Man ist somit nicht mehr Herr über seine eigenen Daten. Bei einem JavaScript-Tracker wie Snowplow hat man absolute Kontrolle über Art der Daten, Umfang, Speicherort etc.

Die Wahl des Speicherorts

Auch die Wahl des Speichers sollte wohl überlegt sein, denn dort muss die Überlegung einfließen, wie diese Daten im Anschluss weiterverwendet werden. Ist eine Verwendung im Sinne von Descriptive Analytics Use Cases gewünscht, müssen die Daten schnell abzufragen sein, um diese ad hoc aggregieren und als Ergebnis dann die Antwort auf die gestellten Fragen liefern zu können. Sollen die Daten für eine Recommendations-Funktion verwendet werden, muss der Speicher skalierbar sein, sodass alle zukünftig auftretenden User-Signale auch abgespeichert werden können, nicht nur diejenigen der letzten X Tage oder Wochen.

Jeder, der uns als Unternehmen kennt, ist nicht überrascht, wenn wir uns als große Solr-Fans outen. Dass wir also Solr als Storage für dieses Szenario ins Spiel bringen, mag vielleicht im ersten Moment überraschend sein, auf den zweiten Blick liegen die Vorteile jedoch auf der Hand:

•    Solr ist hoch skalierbar. Egal, wie viele User-Signale tatsächlich abgespeichert werden sollen, es findet sich auf jeden Fall ein passender Architekturansatz, der mit der Menge an Daten umgehen kann.
•    Solr ist in der Abfragegeschwindigkeit pfeilschnell. Dass Solr schnell auf Daten zugreifen kann ist für Suchapplikationen hinlänglich bekannt. Diese Geschwindigkeit gilt natürlich auch Daten anderer Art.
•    Solr und Spark können gut miteinander. Für den Fall, dass auf Basis der User-Interaktionen komplexere Modelle berechnet werden sollen, die in Richtung Machine Learning gehen, gibt es eine Spark/Solr-Integration, die sowohl das Auslesen von Daten mittels Spark ermöglicht, wie auch das Indexieren von Daten.

Dies sind nur drei Highlights von mehreren Vorteilen, die eine Verwendung von Solr als Datenspeicher mit sich bringt. Die im ersten Teil der Blog-Serie modellierten Datensätze waren alle in einem JSON-Format dargestellt. Diese können so direkt an Solr geschickt werden, um sie dort zu indexieren.

Aber natürlich gibt es neben Solr noch zahlreiche andere Systeme, die sich zum Speichern der Daten eignen, wie z.B. Hadoop als Low-Cost Langzeitspeicher, klassische Datenbanken oder eine Cassandra-Datenbank.

Die Flexibilität von Solr erlaubt es dann, die Daten für die einzelnen Use Cases abzufragen. Und um dieses Thema, die Verwendung der Daten für die unterschiedlichen Use Cases, handelt es sich dann beim dritten und nächsten Teil der Blog-Serie.

Wenn Sie auf der Suche nach der besten Möglichkeit sind, User-Signale zu tracken, zu speichern und für Ihre Wünsche einzusetzen, aber noch nicht genau wissen, wie der beste Weg dafür ist, sprechen Sie uns an und vereinbaren einen Termin mit einem unserer Experten.

Online-Shop Optimierung mit Daten aus User-Verhalten – Teil 1

Online-Shop Optimierung mit Daten aus User-Verhalten – Teil 3

Daniel Wrigley

Daniel Wrigley