Elasticsearch - REST-basierte Suchmaschine
Bei stark frequentierten Seiten ist ein ausgelagerter Suchdienst unumgänglich. Denn Standard-Suchfunktionen kosten viel Zeit und wenn es zu lange dauert, ist der potenzielle Kunde wieder weg.
Elasticsearch bietet euch als eine leistungsstarke real-time Open Source Searchengine das richtige Hilfsmittel, welches Facettensuche, Synonymsuche, Suchvorschläge und Rechtschreibkorrektur beherrscht. Es gibt eine robuste REST API (JSON) sowie Clients für verschiedene Programmiersprachen. Mit kibana könnt ihr ein eigenes Dashboard mit benutzerdefinierten Diagrammen erstellen.
Welche Vorteile hat Elasticsearch?
Schemalos
Es müssen keine Schemadateien wie bei Apache Solr erstellt werden. Ihr habt trotzdem sehr flexible Anpassungsmöglichkeiten durch eigene Mappings, die über YAML-Dateien konfiguriert werden.
Dokumentenorientiert
Es wird keine Tabellenstruktur vorgegeben, die Elasticsearch Datenbank kann Daten mit unterschiedlichsten Strukturen verarbeiten.
Basiert auf Apache Lucene
Apache Lucene ist die hochperformante Bibliothek, die auch in der von TYPO3 CMS bekannten Extension Solr verwendet wird. Elasticsearch benutzt Lucene intern für die Such- und Analyse-Möglichkeiten.
Die richtige Suche für NEOS
Der Core-Entwickler Sebastian Kurfürst entwickelt zusammen mit Robert Lemke und Karsten Dambekalns einen Indexer, der direkt das Content-Repository (TYPO3.TYPO3CR) ausliest. Durch das direkte Indizieren des Content-Repositories kann leicht eine Facettensuche aufgebaut werden. Suchabfragen können über die in TYPO3 Neos eingeführten EEL-Ausdrücke durchgeführt werden. Des Weiteren gibt es auch eine Volltext-Suche, die über YAML konfiguriert werden kann.
Derzeit gibt es zwei interessante Pakete für TYPO3 Neos:
TYPO3 Neos Elasticsearch Adapter
https://github.com/Flowpack/Flowpack.ElasticSearch.ContentRepositoryAdaptor
Flowpack.Elasticsearch
https://github.com/Flowpack/Flowpack.ElasticSearch
Fazit
Mit Elasticsearch wurde in TYPO3 Neos eine äußerst leistungsfähige Suchmaschine implementiert, welche die Anforderungen von kleinen bis sehr großen Webseiten erfüllen kann. Egal, wie euer Unternehmen wächst, die Suchmaschine wächst mit.
Ihr möchtet Elasticsearch testen? Dann besucht einfach unsere Webseite. Weitere Informationen findet ihr auch auf elasticsearch.org.
Kommentare
In welchen Hosting/Servertarifen kann Elasticsearch verwendet werden?
wir empfehlen dir, am besten einen vRoot oder dRoot zu nutzen und dir Elasticsearch selbst drauf zu setzen. Allerdings bist du dann auch eigenständig für die Administration und die Installation des Servers verantwortlich.
Viele Grüße
Kristina
bietet ihr mittlerweile managed Elasticsearch an bzw. wäre das auf eurer Roadmap?
im Kundencenter steht dir OpenSearch zur Verfügung. Im mStudio arbeiten wir an einer Bereitstellung. Übrigens kannst du uns jederzeit Feature-Wünsche schicken. Alles weitere dazu findest du hier: https://github.com/mittwald/feature-requests