Elasticsearch
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
- Suche in Anwendungen (App Search)
- Suche auf Websites (Site Search)
- Suche in Unternehmensdaten (Enterprise Search)
- Logging und Log Analytics
- Infrastrukturmetriken und Container-Monitoring
- Monitoring der Anwendungsleistung (Application Performance Monitoring, APM)
- Analyse und Visualisierung von Geodaten
- Analyse von Sicherheitsdaten (Security Analytics)
- 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.
|
Windows .zip Archiv
|
.zip Archiv ist für eine Windows Installation geeignet.
|
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. |
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. |
docker
|
Bilder sind zum Laufen von Elasticsearch als Docker Kontainer da. Sie können von der Elastic Docker Registrierung herruntergeladen werden. |
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
- ↑ Elasticsearch: elastic.co Abgerufen am 15.03.2023
- ↑ Apache Lucene: lucene.apache.org Abgerufen am 15.03.2023
- ↑ Representational State Transfer: wikipedia.org Abgerufen am 15.03.2023
- ↑ Elasticsearch Language Analyzer-Dokumentation: elastic.co abgerufen am 15.03.2023
- ↑ 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
- ↑ 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
- ↑ Logstash ist eine offene serverweitige Datenverarbeitungsleitung, welche Daten aus vielseitigen Quellen ingestiert, transformiert und absendet. elastic.co abgerufen am 16.03.2023