Checkmark on Circle.png

Elasticsearch

Aus KGS-Wiki
Aktuelles Logo von Elasticsearch, Stand 16.03.2023

Elasticsearch[1] ist eine offene, kostenlose und starke Suchmaschine, basierend auf Apache Lucene.[2] Das Programm speichert Dokumente in einem NoSQL-Format (JSON) und kommuniziert mit Clients über ein RESTful[3] Webinterface. Als eines der weitverbreitesten Suchserver besitzt es viele Verwendungszwecke und bietet viele Vorteile, wie Geschwindigkeit (Fast-Echtzeit), Verteiltheit, Varietät vielerlei Funktionen und die einfache Nutzung für Jedermann.

Außerdem unterstützt Elasticsearch derzeit 34 Sprachen, welche aufgelistet in der ELA-D[4] zu finden sind. Außerdem werden viele Programmiersprachen unterstützt und aktuell gibt es offiziell bereitstehende Clients für die folgenden Sprachen:

Verwendungszwecke

  1. Suche in Anwendungen (App Search)
  2. Suche auf Websites (Site Search)
  3. Suche in Unternehmensdaten (Enterprise Search)
  4. Logging und Log Analytics
  5. Infrastrukturmetriken und Container-Monitoring
  6. Monitoring der Anwendungsleistung (Application Performance Monitoring, APM)
  7. Analyse und Visualisierung von Geodaten
  8. Analyse von Sicherheitsdaten (Security Analytics)
  9. Business-Analytics

Funktionsweise

Elasticsearch empfängt viele Rohdaten aus verschiedenen Quellen, wie Logs und Webanwendungen, worauf diese Daten dann daraufhin geparst, normalisiert und angereichert. Dann werden die Daten zum Schluss in Elasticsearch indexiert. Nach der Indexierung können Nutzer komplexe Abrufungen starten und anhand Aggregationen komplexe Zusammenfassungen erhalten. Anschließend bietet Kibana[5] die Möglichkeit die Daten auf verschiedenen Weisen abzurufen, zu visualisieren, mit anderen Nutzern zu teilen und Elasticstack zu verwalten.

Verteiltheit

Die in Elasticsearch gespeicherten Dokumente werden auf verschiedene Container, die sogenannten Shards, verteilt, die dupliziert werden, sodass im Fall eines Hardware-Ausfalls redundante Kopien parat sind. Die Verteiltheit von Elasticsearch macht es möglich, Elasticsearch auf Hunderte von Servern zu skalieren und Daten Petabyte-weise zu verarbeiten.

Installation

Linux und MacOS tar.gz Archive Elastic Search auf Linux oder MacOS von den tar.gz Archiven.

DownloadGuide

Windows .zip Archiv .zip Archiv ist für eine Windows Installation geeignet.

DownloadGuide

deb Das deb Packet ist geeignet für Debian, Ubuntu und andere Debian-orientierte Systeme.

Debian Packete können von der Elasticsearch Website oder vom Debian Depot herruntergeladen werden.

DownloadGuide

rpm Das rpm Packet ist geeignet für Red Hat, Centos, SLES, OpenSuSE und andere RPM-orientierte Systeme.

RPM Packete können von der Elasticsearch Website oder vom RPM Depot herruntergeladen werden.

DownloadGuide

docker Bilder sind zum Laufen von Elasticsearch als Docker Kontainer da. Sie können von der Elastic Docker Registrierung herruntergeladen werden.

DownloadGuide

Aufbau Elasticstack, Stand 16.03.2023; https://www.elastic.co/de/what-is/elk-stack

Elastic Stack

ELK Stack, auch bekannt als Elastic Stack, ist eine Kombination aus mehreren Komponenten, wie Kibana, Elasticsearch, Beats[6] und Logstash.[7]Es ist dazu da um dem Nutzer dabei zu helfen, Daten aus beliebigen Quellen und in beliebigen Formaten zu nutzen und diese Daten in Echtzeit zu durchsuchen, zu analysieren und zu visualisieren.

Einzelnachweise

  1. Elasticsearch: elastic.co Abgerufen am 15.03.2023
  2. Apache Lucene: lucene.apache.org Abgerufen am 15.03.2023
  3. Representational State Transfer: wikipedia.org Abgerufen am 15.03.2023
  4. Elasticsearch Language Analyzer-Dokumentation: elastic.co abgerufen am 15.03.2023
  5. Kibana:Kibana ist die offizielle Benutzeroberfläche von Elasticsearch. Für Elasticsearch-Nutzer ist Kibana die effektivste Benutzeroberfläche für die Gewinnung von Dateneinblicken. (und die aktive Verwaltung des Zustands ihres Elastic Stack). elastic.co Abgerufen am 15.03.2023
  6. Beats: Eine offene Platform für Daten-shipper, welche Hunderte oder Tausende von Daten von Maschinen und Systemen an Logstash oder Elasticsearch weiterleiten. elastic.co abgerufen am 16.03.2023
  7. Logstash ist eine offene serverweitige Datenverarbeitungsleitung, welche Daten aus vielseitigen Quellen ingestiert, transformiert und absendet. elastic.co abgerufen am 16.03.2023