Der Trend, Einkäufe im Internet per Bestellung zu tätigen, ist seit Jahren auf dem Vormarsch und in den Köpfen der meisten Menschen nicht mehr wegzudenken.
Nahezu alle Güter des alltäglichen Lebens lassen sich 24 Stunden am Tag, 7 Tage die Woche bestellen und werden binnen kürzester Zeit ausgeliefert. Die Konkurrenz zwischen Betreibern von Onlineshops wächst dabei stetig an und es wird zunehmend schwieriger, sich in der Welt der Onlinehändler durchzusetzen.
Eine gute Produktsuche hat sich im Laufe der Jahre als fundamentales Erfolgskriterium herauskristallisiert. Diese ist häufig das erste Element, mit dem ein Nutzer in einem Onlineshop interagiert und einer der größten Umsatzhebel von Shop-Optimierungen.
Anforderungen / Herausforderung
Eine Produktsuche im Bereich E-Commerce sollte eine Vielzahl von Funktionen unterstützen, um den Einkauf für den Kunden schnell und komfortabel zu gestalten. Aus Sicht des Shopbetreibers sollte die Produktsuche zu einer höheren Conversion, mehr Einkäufen und damit mehr Umsatz führen. Dabei geht der Funktionsumfang einer Suche über das simple Produkt-Keyword-Matching hinaus. Dies steht entsprechend vor folgenden Aufgaben:
- Einschränkung von Suchergebnissen mittels Filtern (bspw. Marken, Preis, Farbe)
- Korrektur von falschen Eingaben (Meinten Sie … ?)
- Autovervollständigung
- Mehrsprachigkeit
- Personalisierte Suchergebnisse basieren auf bereits gekauften Waren
- Paarkauf / Empfehlungen („Andere Kunden kauften auch“)
- Auflösen von Longtail Suchanfragen (bspw. „schwarze Hose für Männer“)
- Analysefunktionalitäten zur kontinuierlichen, automatisierten Verbesserung der Suche (bspw. Null-Suchen-Reporting, Top Suchen, etc.)
Im High-End-Bereich müssen Suchen diese funktionalen Aspekte bedienen aber zusätzlich auch wichtige nicht funktionale Anforderungen erfüllen:
- Unterstützung von großen Datenmengen (mehrere Millionen Artikel)
- Near-Real-Time Indexierung (permanente Updates der Suchdaten)
- Cybersicherheit (Schutz vor DDoS)
- Schnelle Antwortzeiten, trotz hohem Such- und Datenvolumen
Lösung
Eine einfache Suche mittels einer Datenbank oder auch einer Volltextsuche, sind für die vielen verschiedenen Anforderungen nicht ausreichend. Lösungen für die genannten Probleme/Anforderungen bieten Open Source Technologien wie beispielsweise Apache Lucene und Apache Solr. Hiermit lässt sich mit geringem Implementierungsaufwand eine vollwertige Volltextsuche für Onlineshops erstellen, die alle geforderten Funktionen enthält. Da es sich um eine Open Source Software handelt, entfallen hohe Lizenzgebühren und auch die Kosten für das Betreiben der Suche lassen sich gut steuern, da man nicht an spezielle Hostinganbieter gebunden ist. Die Entscheidung ob lokal, in einem Rechenzentrum oder bei einem der großen Cloudanbieter betrieben, kann der Shopbetreiber selbstständig fällen.
Apache Solr ist dank der „SolrCloud“ Funktionalitäten elastisch skalierbar und es können ohne großen Aufwand Lastspitzen durch Zuschalten weiterer Server abgefangen werden. Bei wenig Last können ohne große Anpassungen Server abgeschaltet und für andere Zwecke verwendet werden. So befindet man sich im populären Pay-as-you-go Pricing-plan.
Ein komplexes Such-System ist unterteilt in eine Komponente, die für die Erstellung des Index zuständig ist (“Indexer”) und die eigentliche Suche, die ebenfalls den Index beinhaltet. Der Indexer kann entweder zu regelmäßigen Zeiten einen neuen Index anlegen, oder kontinuierlich aktualisierte Produktdaten in den Suchindex einfügen.
Die Suche selbst besteht meist aus mehreren Instanzen, die zu einem Cluster zusammengefügt sind. Der Suchindex wird über die verschiedenen Instanzen verteilt, was zu einer erhöhten Performanz führt. Außerdem werden die Teile des Index repliziert über die verschiedenen Instanzen, um Ausfallsicherheit zu gewährleisten.
Der Search Service ist in der Regel ein Microservice oder ein Self-contained System, das die Apache SolrCloud kapselt und APIs für diverse Systeme zur Verfügung stellt.
Üblicherweise werden folgende APIs bereitgestellt:
- Produktsuche (für den Endkunden)
- Suchadministration
- manuelle Produktpflege
- automatisierte Produktpflege
- Analytics
- Administration
Das System ist um viele Funktionalitäten erweiterbar und somit ein Alleskönner im Bereich der Enterprise Search. Apache Solr kann aufgrund modernster Algorithmen selbstständig das Nutzerverhalten analysieren und die Suchergebnisse oder Reihenfolge der gefundenen Artikel anpassen. Ebenfalls lassen sich Suchergebnisse gezielt durch Werbekampagnen steuern. So können beispielsweise Waren mit einer höheren Marge an höheren Positionen angezeigt werden.
Data Driven Search Optimization
Bei stets steigenden Datenmengen können Big Data Technologien bessere Empfehlungen und Vorhersagen treffen als manuell gepflegte Suchen. Kleinere Unternehmen, die möglicherweise kein Budget für ein eigenes Suchteam haben, profitieren ebenfalls von einer automatisierten, datengetriebenen Optimierung der Suche. Während manuell gepflegte Suchen schnell an Aktualität verlieren und mit großem Aufwand regelmäßig händisch gepflegt werden müssen, kann eine automatisierte Suche anhand der Trends der Nutzer die optimalen Ergebnisse ohne manuelle Einwirkung ermitteln.
Data Driven Search Optimization hilft dabei, die manuellen Aufwände so gering wie nötig zu halten und sorgt gleichzeitig dafür, dass stets aktuelle und vollständige Produktdaten in der Suche verfügbar sind. Die datengetriebene Suche ist ein großer Umsatzhebel, da so auf Basis des Nutzerverhaltens eines Onlineshops die Produkte beispielsweise besser beworben oder platziert werden können. Es sind keine langwierigen, manuellen Testphasen mehr nötig, um eine Konfigurationsänderung der Suche zu analysieren. Der vollständig automatisierte Optimierungsprozess übernimmt diese Tätigkeiten und lässt Entscheidungen, die “aus dem Bauch heraus” getroffen wurden, überflüssig werden.
Fazit
Ohne eine moderne, konfigurierbare Enterprise Search entgehen vielen Onlineportalen Käufer. In einem starken Wettbewerb kann man sich durch eine gute und für den Kunden relevante Suche hervorheben. Mit aktuellen Open-Source basierten Systemen lassen sich High End Suchen erstellen, die den Ansprüchen von großen Systemen gerecht werden. An dieser Stelle sind vor allem technisches Know-How und die entsprechenden Ingenieurs-Skills gefragt, um diese Systeme aufzusetzen, zu programmieren, zu betreiben und ständig zu verbessern.
Quellen
- Apache Solr https://lucene.apache.org/solr/
- Zalando Blog https://jobs.zalando.com/tech/blog/search-deep-neural-network/
- Steve Rowe – Lucene/Solr 8: The Next Major Release https://www.youtube.com/watch?v=dkWy2ykzAv0