Seit der Version Magento 2.4 ist Elasticsearch die Standard-Suchmaschine des Shopsystems, und hat die MySQL Suche verdrängt. Diese Entscheidung ist nur konsequent, denn die Performance des Tools ist nahezu konkurrenzlos. Dabei kann Elasticsearch noch viel mehr – und das wird oft unterschätzt.
Geschwindigkeit nur eines der Merkmale
Das Hauptmerkmal von Elasticsearch ist sicherlich die Geschwindigkeit, denn die Suchengine ist viel schneller als die bisherige Standard-Suchmaschine von Magento. Die Suchergebnisse werden bei Elasticsearch nahezu in Echtzeit ausgeben – was vor allem daran liegt, dass Elasticsearch nur ein Teil einer sehr mächtigen Suite ist, die Daten nicht nur abrufen, sondern auch lagern kann. Und das ist der entscheidende Vorteil des Tools. Der übliche Vorgang von Suchanfrage, Rückantwort, Datenauslieferung wird durch die direkt angebundene Datenbank erheblich beschleunigt. Durch eine bereits vorliegende Indexierung der Produkte in der Datenbank, liegen alle Daten bereits „fertig“ für den Abruf bereit. So gesehen ist Elasticsearch nichts anderes als eine Schublade mit vielen Dokumenten, die in dem Moment der Suchanfrage geöffnet wird.
Eine weitere Eigenschaft, die der Performance von Elasticsearch zugutekommt, ist die Flexibilität: Elasticsearch arbeitet vereinfacht gesagt nach dem Headless-Prinzip, das heißt via Schnittstelle lässt sich jedes einzelne Tool in eine beliebige IT-Infrastruktur integrieren. Durch diese Herangehensweise ist der Suchindex herausgetrennt – was zum Beispiel auch modernsten Technologien wie PWA die Türen öffnet. Durch eine API-Anbindung kann ein PWA-Frontend direkt auf Elasticsearch zugreifen und das volle Potential von Headless ausnutzen.
Mehr Möglichkeiten durch den ElasticStack
Wie erwähnt ist Elasticsearch nur ein Teil eines Angebots von Tools, die der Hersteller Elastic in petto hat. Im Zusammenspiel mit den anderen Features dieses Softwarepakets ergeben sich für die Shopbetreiber vielfältige Möglichkeiten, die weit über die herkömmliche Suchfunktion hinaus gehen.
Beispielsweise kann ein Unternehmen mithilfe von Elasticsearch die Attributsuche in ihrem Webshop implementieren. Dadurch ist es möglich, bestimmt Produkte allein nach Farbe oder Einsatzgebiet anzeigen zu lassen. Eine weitere Stufe der Suchfunktion von Elastic sind verschiedene Filterschichten. Anwender finden diese Filterschichten zum Beispiel in dem Webshop eines Fahrradherstellers, wo nach Daten wie Rahmengröße, Schaltwerk, Bremsanlage etc. gleichzeitig gesucht werden kann, um ein möglichst präzises Ergebnis zu erhalten. In Kombination mit Kibana, einem Datenanalyse-Tool, das optional als eine Art Backend für Elasticsearch genutzt werden kann, stehen den Shopbetreibern viele Optionen zur Verfügung.
Die Einsatzmöglichkeiten für Elasticsearch sind daher enorm vielfältig. Zu den Aufgaben des Elastic Stacks können unter anderem gehören:
- Anwendungssuche in Apps
- Website-Suche
- Nutzung als NoSQL-Datenbank
- Datenfilterung
- Monitoring und Analyse
Elasticsearch Vorteile im Überblick
Die bereits ausführlich beschriebenen Benefits von Elasticsearch sollten als Argument für dieses Tool jeden Shopbetreiber überzeugen können. Aber Elasticsearch ist und kann eben noch viel mehr. Das umfangreiche System von Elastic nur als erweiterte Suchengine zu beschreiben, würde der Sache nicht gerecht werden. Aus diesem Grund führen wir im Folgenden noch einmal die größten Vorteile von Elasticsearch auf:
Multifunktionale Suchengine
Die Kernkompetenz von Elasticsearch als Suchmaschine wird im E-Commerce-Umfeld noch um wichtige Eigenschaften erweitert. Deswegen dient Elasticsearch vielen Shopbetreibern sowohl zum Suchen, als auch zum Speichern und analysieren von Daten. Die Fähigkeit von Elasticsearch auch als NoSQL-Datenbank genutzt zu werden, hat dementsprechend nicht nur Auswirkungen auf die Geschwindigkeit des Tools, sondern hilft den Unternehmen auch beim Datenmanagement.
Open Source
Die Lizenzierung der Software ist Open Source und damit frei zugänglich. Dies gibt auch bisher unentschlossenen Unternehmen die Möglichkeit, das Tool einmal genauer unter die Lupe zu nehmen. Erst für Elasticsearch und Kibana in Verbindung mit der Elastic Cloud fallen monatliche Abokosten an, für die es verschieden große Service-Modelle gibt.
Skalierbarkeit
Durch die Architektur, die auf Microservices und dem Headless-Ansatz basiert, ist eine extrem flexible Skalierung möglich. Durch die Anbindung von Elasticsearch an andere Systeme entstehen keine Datenengpässe und die Performance kann nahezu unabhängig von der Auslastung des Webshops abgerufen werden. Außerdem kommt Elasticsearch von Haus aus mit einem Balancing-Mechanismus, welcher sogenannte Shards und Replicas nutzt, um eine optimale Performance zu gewährleisten.
Markt-Awareness
Die Eigenschaften der Microservices bieten den Shopbetreibern auch strategisch viele Vorzüge. Durch die auf Schnittstellen basierte Infrastruktur kann ein Unternehmen extrem schnell auf Veränderungen oder Neuerungen auf dem Markt reagieren. Veraltete oder beschädigte Systeme lassen sich ohne großen Entwicklungsaufwand einfach austauschen. Das neue System wird dann einfach wieder per API-Schnittstelle an Elasticsearch und die restliche Infrastruktur angebunden.
Bilder: netz98, elasticsearch