Interview mit Florian Hopf

Elasticsearch jenseits der Volltextsuche
Kommentare

Elasticsearch wird als verteilte Volltextsuchmaschine immer beliebter. Sie profitiert von zahlreichen attraktiven Features der Basistechnologie Apache Lucene, erweitert diese aber auch kontinuierlich um neue Funktionalität. Auf der BigDataCon 2015 wird Florian Hopf Anwendungsfälle für Elasticsearch vorstellen. Dass Suchen mit Elasticsearch nicht immer auf Text basieren müssen, veranschaulicht er in folgendem Interview anhand des Beispiels Geodaten. 

Du sprichst in deiner JAX-Session über die Volltextsuche in großen Datenmengen mit Elasticsearch. Was zeichnet Elasticsearch aus?

Florian Hopf: Elasticsearch basiert auf der Bibliothek Apache Lucene und stellt viele Features daraus elegant über eine HTTP-API zur Verfügung. Das wirklich Besondere an Elasticsearch ist allerdings dessen verteilte Natur. Einzelne Knoten bilden ein Cluster, in dem dann auch große Datenmengen über Sharding verteilt werden können. Um mit einer hohen Anfragelast umgehen zu können, ist es möglich, die Daten zusätzlich auf mehrere Knoten zu replizieren. Mächtige Features. Die einfache Bedienung steht dabei aber immer im Vordergrund.

In welchen Fällen kommt Elasticsearch typischerweise zur Anwendung? Kannst du ein Beispiel nennen?

Hopf: Der klassische Anwendungsfall ist natürlich die Suche, die ja auch schon im Namen steckt, oft auf Textdaten. Der von Apache Lucene bereitgestellte invertierte Index wird genutzt, um Daten schnell auffindbar zu machen. Dafür gibt es dann auch jede Menge Beispiele – Entwickler kommen besonders häufig mit einer auf Elasticsearch basierenden Suche in Kontakt, da sowohl GitHub als auch Stackoverflow darauf aufsetzen. Daneben glänzt Elasticsearch vor allem mit den Analytics-Möglichkeiten, nicht nur für zentralisiertes Logging im Zusammenspiel mit Logstash und Kibana.

BigDataCon 2015

BigDataCon 2015

Im Zeichen von Big Data entstehen aktuell neue Technologien und Methoden für Speicherung, Processing, Suche, Echtzeitverarbeitung, globale Bereitstellung und Visualisierung. Die BigDataCon ist die Konferenz, die sich mit diesen Herausforderungen auf technischem und strategischem Niveau beschäftigt. Sie präsentiert aktuelle und praxisrelevante Informationen sowie Orientierungshilfen für Softwarearchitekten, Datenbankexperten und IT-Entscheider und bietet erstklassige Networking Gelegenheiten mit anderen Experten. Präsentiert als Erweiterung der JAX 2015 und der Business Technology Days, mit denen sie zeitgleich stattfindet, bietet die BigDataCon ihren Teilnehmern Zugang zu einer Fülle an weiteren Sessions und Keynotes. Rund 230 Sessions, die sich mit Softwarearchitektur, Business IT-Alignment, Methodologie und Java-Technologie beschäftigen, stehen dem BigDataCon-Besucher ohne weitere Kosten zur Verfügung. Noch bis 12. Februar profitieren Sie von den Frühbucherrabatten. Mehr Informationen unter http://bigdatacon.de.

Wo liegt der Unterschied zu Caching-Lösungen wie beispielsweise Hazelcast?

Hopf: Der gravierendste Unterschied ist sicherlich, dass Elasticsearch die Daten persistiert und damit auch für eine längerfristige Speicherung verwendet werden kann. Zusätzlich sind sehr viel komplexere Abfragen möglich.

Elasticsearch baut auf Apache Lucene auf. Welche Vorteile – aber evtl. auch Nachteile – ergeben sich daraus?

Hopf: Apache Lucene ist ein stabiles und bewährtes Projekt, in das viel Hirnschmalz geflossen ist. Da es ein sehr wichtiger Unterbau für Elasticsearch ist, unterstützt das Unternehmen dahinter mittlerweile auch die Entwicklung – mehrere Commiter sind dort angestellt.

In deiner W-JAX Session sprichst du auch Geo-Spatial-Features an. Welche bietet Elasticsearch  – und was kann man damit machen?

Hopf: Die Geo-Features sind ein sehr schönes Beispiel dafür, dass eine Suche mit Elasticsearch nicht nur auf Text arbeiten muss. Die Geo-Integration ermöglicht die Berechnung von Distanzen und die Sortierung und die Filterung danach. So können beispielsweise einfach Kleinanzeigen nach der Distanz zum Nutzer sortiert werden oder Restaurants in der Nähe angezeigt werden. Ein Anwendungsfall, bei dem man vielleicht nicht direkt an einen Suchserver denken würde.

Du bist selbst ja in der Java User Group Karlsruhe aktiv und organisierst das Search Meetup Karlsruhe. Was macht Ihr genau in diesem Search Meetup?

Hopf: Wir veranstalten beim Search Meetup alle zwei Monate ein Treffen, meist mit zwei Vorträgen. Auch dort spielt Elasticsearch natürlich eine große Rolle. Wir haben uns bei der Gründung allerdings dazu entschlossen, kein reines Elasticsearch-Meetup zu sein, wie momentan viele auch in Deutschland entstehen. Deshalb geht es bei uns auch um andere Lösungen wie beispielsweise Apache Solr. Was mich aber dann doch überrascht hat, ist, wie gut das Thema ankommt. Mittlerweile hatten wir schon Treffen mit über 70 Teilnehmern. Durch die Vielseitigkeit der Anwendungsfälle ist Suche für die unterschiedlichsten Leute interessant.

Aktuell ist Elasticsearch in der Version 1.4.2 zu haben. Wie sollte sich Elasticsearch deiner Meinung nach jetzt weiterentwickeln?

Hopf: Einer der großen Vorteile von Elasticsearch ist die leichte Bedienbarkeit. Damit dies auch in Zukunft so bleibt, sollte es weiterhin ein schlankes Produkt bleiben – Elasticsearch muss nicht jedes vorstellbare Feature integrieren.

Florian HopfFlorian Hopf arbeitet als freiberuflicher Softwareentwickler in Karlsruhe. Er ist verantwortlich für kleine und große Suchlösungen, basierend auf Lucene, Solr und Elasticsearch und einer der Organisatoren der Java User Group Karlsruhe und des Search Meetup Karlsruhe.

Aufmacherbild: Illustration of Search Engine Bar and Finder Lens on Yellow Green Background. Glowing Technology Squares on Upper and Lower Sides von shutterstock.com / Urheberrecht: Crystal Eye Studio

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -