Am 14. September 2017 haben wir eine überarbeitete Fassung unserer Datenschutzrichtlinie veröffentlicht. Wenn Sie video2brain.com weiterhin nutzen, erklären Sie sich mit diesem überarbeiteten Dokument einverstanden. Bitte lesen Sie es deshalb sorgfältig durch.

Elasticsearch Grundkurs

Mit Lucene suchen

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Suchvorgänge auf Basis von Lucene können rein auf Text basierend formuliert werden und stellen so eine ideale Schnittstelle für den Endbenutzer der Suchfunktion dar.

Transkript

Die Indizierungsmechanismen von Elasticsearch basieren auf "Apache Lucene". Aufgrund dessen kann man auch die für Lucene üblichen Suchoperatoren verwenden, um in Elasticsearch zu suchen. Welche Möglichkeiten Sie hier beispielsweise haben, erfahren Sie nun im laufe dieses Videos. Zunächst einmal beginne ich damit, in mein Elasticsearch die 250 besten Filme auf IMDb im Index Movies zu speichern. Um nun auf Basis von "Lucene" in meinen Datensätzen suchen zu können, kann ich auch die JSON-Syntax verwenden. Dafür definiere ich also ein JSON Objekt mit dem Attribut "query" und hier mit der Angabe "query_string". In der ich nun auf dem Attribut "query" wiederum den "string", als solches definiere. Diese "Lucene"-Suchinstruktion definiert also nun über mehrere Felder hinweg meine gewünschten Suchattribute. In diesem Beispiel suche ich nun nach dem Wort "Baldwin". Dies ist ein Wort das für mich allerding optional ist. Und in jedem Feld stehen darf, dadurch, dass ich hier keine Feldangabe mache. Wie im anderen Beispiel bei dem ich nun explizit sage: "Der Film muss vom Genre Crime sein". Und idealerweise muss dieser Film nun auch aus dem Jahre 1995 oder all den Folgejahren bis 2000 stammen. Der bestbewertete Film hat nun tatsächlich unter "Actors Stephen Baldwin". Der Film heißt "The Usual Suspects". Der nächte Film in dieser Liste erfüllt zwar auch alle anderen Kriterien, hat also das Genre "Crime" und stammt aus dem Jahre 1995, allerding spielt hier keine Person mit dem Namen Baldwin mit. Aus diesem Grund ist der Score dieses Films natürlich deutlich niedriger, als der, des Vorherigen. Wenn ich nun die Angabe des Schauspielers Baldwin, als Muss-Kriterium definiere mit dem +, wird nur noch der Film "The Usual Suspects" auftauchen. Hierfür spielt nur noch für das Scoring eine Rolle, ob das Wort "Test" enthalten ist oder nicht. Es ist und bleibt also optional. Das Praktische an der "Lucene" Syntax ist nun, dass erkennbar einfach von einem Nutzer nur anhand von Textangaben spezifiziert werden kann, welche Information für ihn relevant sind. Er benötigt keine komplexe Abfragestruktur, wie Sie mit der üblichen query Syntax von Elasticsearch über das JSON Documnet abgebildet wird. Der Score wird natürlich entsprechend höher für ein Document, wenn mehrere Dinge zutreffen. Dadurch, dass das Wort "Bryan" hier auch in einem Feld vorkommt, konkret im Feld "Regisseur" oder auch "Director", wird der Score des Filmes "The Usual Suspects" deutlich erhöht. Folglich markiere ich also mit einem + sogenannte Muss-Kriterien. Ich kann nun beispielsweise auch sagen, dass das Wort "Test" egal in welchem Feld vorkommen muss, indem ich auch hier ein + voranstelle. Selbstverständlich bekomme ich nun kein Ergebniss, da das Wort "Test" niergendswo innerhalb der Beschreibung dieses Filmes auftaucht. Neben der Angabe von optionalen und Muss-Kriterien, kann ich auch zusätzlich "Wildcard" Syntax verwenden, um bspw. Wörter zu markieren, die irgenwo im Text stehen können. Beispielsweise hier mit dem Wort "Usual". Mit der "Lucene" Syntax lassen sich also Suchinstruktionen deutlich in der Komplexität reduzieren, denn selbst Nutzer, der am Ende angebotenen Suche können dies über rein textuel angegebene Informationen realisieren. Dabei ist es möglich, wie auch hier gesehen, numerische Einschränkungen vorzunehmen, wie beispielsweise auf dem Feld für die Jahresangabe. Genauso können Texte eingeschränkt werden mit optionalen und Muss-Eingaben, als auch ganz einfach über die globale Feldsuche mit dem ganzen Dokument gearbeitet werden. Optionale- und pflichtangaben werden entsprechend mit einem +, als Pflichtangabe oder keiner expliziten Angabe eines Zeichens markiert.

Elasticsearch Grundkurs

Lernen Sie, Elasticsearch und seine Einsatzgebiete zu verstehen und mit der API zu interagieren.

2 Std. 19 min (23 Videos)
Derzeit sind keine Feedbacks vorhanden...
 
Themen:
Programmierung
Exklusiv für Abo-Kunden
Erscheinungsdatum:23.02.2017

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!