Elasticsearch in disy Cadenza: Datenquelle für
Big Data, Textsuche und mehr

Elasticsearch ist eine NoSQL-Datenquelle für Big Data und zeichnet sich vor allem durch Besonderheiten in der Textsuche aus. Von nun an kann Elasticsearch auch an disy Cadenza angebunden werden.

Elasticsearch - Feature in disy Cadenza

Flexibilität in der Datenanalyse steht bei disy Cadenza an oberster Stelle – auch bei der Wahl der Datenquelle. Deshalb erweitern wir die Anbindungsmöglichkeiten stetig. Das neueste Mitglied in unserer Datenquellenfamilie ist Elasticsearch. Wie jede andere Datenquelle eröffnet auch Elasticsearch gewisse Vorteile. So handelt es sich bei Elasticsearch sowohl um einen Dokumentenspeicher als auch um eine Suchmaschine. Was im ersten Moment unspektakulär klingen mag, eröffnet in der Praxis umfangreiche Analysemöglichkeiten.

In diesem Beitrag geben wir Ihnen einen Überblick über die Grundlagen von Elasticsearch. Wir zeigen Ihnen, welchen Nutzen Elasticsearch bietet und welche neuen Möglichkeiten sich dadurch in disy Cadenza ergeben.

Elasticsearch das Allround-Talent

Neben SQL-Datenbanken unterstützt disy Cadenza auch NoSQL-Datenquellen. Seit Kurzem wird Elasticsearch, eine NoSQL-Datenbank, die sich speziell für den Umgang mit sehr großen textbasierten Datenmengen eignet, unterstützt.

Elasticsearch: Elasticsearch ist sowohl Dokumentenspeicher als auch Suchmaschine

Elasticsearch ist sowohl Dokumentenspeicher als auch Suchmaschine

Das spannende an Elasticsearch ist: Es handelt sich dabei sowohl um einen Dokumentenspeicher als auch um eine Suchmaschine. Beide Aspekte eröffnen dabei wesentliche Vorteile. Erreicht wird dies mit einer Art Inhaltsverzeichnis (Index) über alle abgespeicherten Dokumente. Dort wird zu allen potenziell relevanten Suchbegriffen der genaue Speicherort hinterlegt. Elasticsearch eignet sich besonders gut für Daten mit einem hohen Textanteil, die dann blitzschnell durchsucht werden können. Ein Beispiel hierfür sind Logfiles. Mithilfe von Elasticsearch kann so beispielsweise einfach herausgefunden werden, wer sich wann in einem System angemeldet hat o. Ä.

Hervorzuheben ist auch die gute und vergleichsweise kostengünstige Skalierbarkeit. Elasticsearch eignet sich damit sehr gut für den Clusterbetrieb und für die Cloud. Durch die Verteilung der Arbeitslast auf mehrere Knoten in einem Cluster weist Elasticsearch eine hohe Resilienz auf. Fällt ein Knoten aus oder ist dieser nicht verfügbar, können die anderen Knoten im Cluster weiterhin reibungslos funktionieren und den Datenzugriff sicherstellen.

Elasticsearch hat außerdem eine hohe Schreib- und Lesegeschwindigkeit. Durch die rasante Indizierung sind gespeicherte Daten innerhalb von einer Sekunde in der Suche auffindbar; Suchergebnisse werden in wenigen Millisekunden bereitgestellt.

Dazu kommt, dass jede Datenanfrage bei Elasticsearch auch gleichzeitig eine Suche ist. Mit jeder Datenabfrage wird dabei ein Relevanzkriterium geliefert. Damit ist gemeint, dass Ergebnisse mit einer Relevanzmetrik zurückgegeben werden. Die Suche ist vergleichbar mit der einer Suchmaschine, wie beispielsweise Google. Gibt man Suchbegriffe oder Suchmuster ein, werden Treffer ausgegeben und nach Relevanz sortiert angezeigt.

Elasticsearch und disy Cadenza

Elasticsearch-Datenquellen und ihre Daten fügen sich in disy Cadenza nahtlos ein. So können beispielsweise tabellarische Sichten auf die Elasticsearch-Daten angezeigt oder auch Datenfilterungen verwendet werden. Etwaige Einstellungen, wie beispielsweise die Anbindung oder die Rechte- und Namensvergabe, können daher wie gewohnt im Management Center vorgenommen werden.

Da die Daten dokumentenorientiert gespeichert werden, gibt es einen zusätzlichen Datentyp für lange Zeichenketten. Es ist möglich, diese Textfragmente oder strukturierte Texte (wie z. B. HTML-Fragmente) in disy Cadenza anzeigen zu lassen. Im nachfolgenden Beispiel ist ein XML-Dokument zu sehen. Es kann aber auch Fließtext-, CSV- oder JSON-strukturiert sein.

JSON-Dokument in der Datenanalyse-Software disy Cadenza anzeigen lassen.

JSON-Dokument in disy Cadenza anzeigen

Mehr Suchmöglichkeiten für ein noch besseres Analyseergebnis

disy Cadenza ermöglicht die Suche auf mehreren Attributen gleichzeitig in einer Datenzusammenstellung. Das bedeutet, dass sich beispielsweise in einer Tabelle die Suche bzw. Filterung auf zwei oder mehrere Spalten (Attribute) bezieht. Außerdem werden die Suchmöglichkeiten mit Elasticsearch deutlich erweitert. So kann ein Platzhalter bei der Suche verwendet werden. Dabei gibt es folgende Möglichkeiten:

„?“ steht für ein beliebiges Zeichen. Somit werden bei der Eingabe von „A?el“ Nachnamen und Vornamen wie „ABel“, „ASel“, oder auch „AXel“ berücksichtigt.

Elasticsearch: Beispiel zu Suchmöglichkeiten mit der Fragezeichen-Suche in der Datenanalyse-Software disy Cadenza
Suchmöglichkeiten: ?-Suche
Elasticsearch: Beispiel zu Suchmöglichkeiten mit der Sternchen-Suche in der Datenanalyse-Software disy Cadenza
Suchmöglichkeiten: *-Suche

„*“ steht für beliebig viele Zeichen in einer Zeichenkette. Bei einer Sucheingabe von „A*el“ werden neben Ergebnissen wie „ABel“ und „AXel“, auch wie „ANGel“ und „APPel“ geliefert.

Beispiel zu Suchmöglichkeiten mit der unscharfen Suche in der Datenanalyse-Software disy Cadenza
Suchmöglichkeiten: unscharfe-Suche

„~“ ermöglicht eine fuzzy, bzw. unscharfe Suche. Dies kann sehr hilfreich sein, wenn man beispielsweise unsicher ist, wie ein Name geschrieben wird. Bei der Eingabe „Almuth~“ erhält man daher Ergebnisse wie „Almuth“, „Almut“, „Annegret-Almuth“ oder auch „Helmuth“.

Elasticsearch: Beispiel zu Suchmöglichkeiten mit der Bereichssuche in der Datenanalyse-Software disy Cadenza
Suchmöglichkeiten: Bereichssuche (inklusive Suchbegriffe)

„[X TO Y]“ oder „{X TO Y}“, beispielsweise „[Abel TO Achilles]“ wird als Bereichssuche bezeichnet. Alle Daten von „Abel“ bis „Achilles“ (alphabetisch) werden dabei berücksichtigt. Bei einer Suche mit eckiger Klammer werden die Namen „Abel“ und „Achilles“ inkludiert, mit geschweifter Klammer sind diese in den Suchergebnissen nicht enthalten.

Außerdem gibt es eine freie Suche, in der die Apache Lucene-Syntax in vollem Umfang genutzt werden kann. Beispielsweise kann so mithilfe der Umgebungssuche („Begriff1 Begriff2“~X) in einem Dokument nach mehreren Begriffen gesucht werden, die innerhalb eines gewissen Zeichenabstands X vorkommen.

Summa summarum: Elasticsearch schafft neue Möglichkeiten und Weiterentwicklungspotenziale in disy Cadenza

Die Elasticsearch-Unterstützung ist nahtlos in disy Cadenza integriert. Anwendende merken daher nicht bewusst, dass sie eine neuartige Datenbank und Suchmaschine nutzen. Mit den Daten aus Elasticsearch können wie üblich Dashboards, Berichte usw. erstellt und Analysen durchgeführt werden.

Durch Elasticsearch kann auf enorme Datenmengen zugegriffen werden; es entstehen viele Synergien mit existierenden Funktionen zur Datenaufbereitung und Analyse. Zudem ermöglicht Elasticsearch die attributübergreifende Volltextsuche. Auch die verschiedenen Suchmöglichkeiten, wie beispielsweise die unscharfe Suche, zeigen ganz neue Analysemöglichkeiten in disy Cadenza auf.

Da Elasticsearch gleichzeitig ein Dokumentenspeicher und eine Suchmaschine ist, gibt es vielseitige Vorteile, wie eine sehr gute Skalierbarkeit, eine hohe Schreib- und Lesegeschwindigkeit sowie das Liefern eines Relevanzkriteriums.

In zukünftigen Versionen sollen zudem weitere Besonderheiten und Stärken von Elasticsearch in disy Cadenza nutzbar gemacht werden:

  • Auch linguistische Suchverfahren, wie die phonetische und die sprachenspezifische Suche sind mit Elasticsearch möglich. Bei der phonetischen Suche werden Begriffe gesucht, die ähnlich klingen, wie beispielsweise „Meyer“ oder „Maier“. Bei der sprachenspezifischen Suche könnten wiederum beispielsweise sprachenspezifische Wortstämme berücksichtigt werden.
  • Zudem gibt es eine Geodatenunterstützung. So könnte auf Geodaten zugegriffen werden, um fortgeschrittene Analysen durchzuführen. Räumliche Clusterung, räumliche Aggregation und räumliche Filter sind Beispiele hierfür. Auch hier gäbe es eine Synergie mit der Suche, da Elasticsearch in der Lage ist, die räumlichen Nähe in der Relevanz der Suche zu berücksichtigen.

Die Integration von Elasticsearch in disy Cadenza eröffnet viele neue Analysemöglichkeiten und schafft Flexibilität bei der Suche sowie beim Arbeiten mit großen Datenmengen. Wenn Sie mehr zu den Neuheiten in disy Cadenza erfahren möchten, dann werfen Sie gerne einen Blick auf den neuesten „Neues in disy Cadenza“-Beitrag!