Ich fange gerade erst mit Elasticsearch an und einer der Hauptanwendungsfälle, die ich gesehen habe, ist die Skalierbarkeit bei der Suche in großen Datenmengen. Aber wann sollten Sie es verwenden, anstatt nur SQL-Abfragen mit einem herkömmlichen RDBMS zu erstellen?
elasticsearch
use-case
James Drinkard
quelle
quelle
Antworten:
Es gibt zwei Hauptanwendungsfälle für Elasticsearch:
Sie möchten Elasticsearch, wenn Sie viel Text suchen, wo herkömmliche RDBMS-Datenbanken nicht wirklich gut funktionieren (schlechte Konfiguration, Blackbox, schlechte Leistung). Elasticsearch ist hochgradig anpassbar und durch Plugins erweiterbar. Sie können sehr schnell eine robuste Suche ohne viel Wissen erstellen.
Ein weiterer Vorteil ist, dass viele Benutzer Elasticsearch verwenden, um Protokolle aus verschiedenen Quellen zu speichern (um sie zu zentralisieren), damit sie sie analysieren und einen Sinn daraus ziehen können. In diesem Fall wird Kibana praktisch. Sie können eine Verbindung zum Elasticsearch-Cluster herstellen und sofort Visualisierungen erstellen. Zum Beispiel wird Loggly mit Elasticsearch und Kibana erstellt.
Beachten Sie, dass Sie Elasticsearch nicht als primären Datenspeicher verwenden möchten. Gründe hier: Wie zuverlässig ist ElasticSearch als primärer Datenspeicher gegen Faktoren wie Schreibverlust und DatenverfügbarkeitAktualisieren
Ich hatte das Gefühl, dass der zweite Teil nicht mehr nervös ist, sondern das, was Elastic als Unternehmen im vergangenen Jahr wirklich gut gemacht hat. Mit der aktuellen DevOps-Bewegung, CI / CD-Pipelines und der zunehmenden Anzahl von Metriken aus verschiedenen Quellen wurde ELK zu einer defakten Wahl für die Überwachung der Infrastruktur. Es ist nicht mehr nur eine verteilte RESTful-Textsuchmaschine. Es hat eine erstaunliche Reihe von Produkten:
Um den ELK-Stack herum wächst ein Ökosystem, das von der Community aufgebaut wurde und die aktuellen Funktionen erweitert. Einige davon sind erwähnenswert:
quelle
Um die andere Antwort hinzuzufügen, ist die Protokollierung neben der Suche immer noch ein wichtiger Anwendungsfall, aber jetzt werden Metriken und Analysen immer wichtiger.
Ich glaube, dass dieser Beitrag die Veränderungen auf dem Markt zusammenfasst, die neue Anwendungsfälle für Big Data vorantreiben. Alles, was Sie wirklich über Open Source-Datenbanken wissen müssen
Einer der Elasticsearch-Architekten, mit denen ich gesprochen habe, sagte, dass 80% der Daten, mit denen Elasticsearch in Unternehmen arbeitet, unstrukturiert sind, während 20% strukturiert sind. Es sind die unstrukturierten Daten, nach denen Unternehmen suchen, um seltene oder ungewöhnliche Datenmuster zu entdecken. Sie verwenden Elasticsearch auch zur Überwachung von Datenmustern. Zum Beispiel führt ein großer Einzelhändler mit Elasticsearch eine Echtzeit-Nachverfolgung durch, um sicherzustellen, dass in den Geschäften ausreichend Geld vorhanden ist, damit die Leute an Zahltagen Schecks einlösen können.
Nach meiner eigenen Erfahrung mit unserem Suchanwendungsfall verwenden wir nicht nur Fuzzy-Suchen, sondern es hat sich auch zu einer automatischen und schnellen Suche entwickelt. Nach dem, was ich gesehen habe, entwickeln Sie sich, sobald Sie mit Elasticsearch arbeiten, zu anderen Anwendungsfällen, die das ergänzen, was Sie bereits eingerichtet haben. Nachdem wir Elasticsearch in unserem Unternehmen als Fuzzy-Suchmaschine etabliert haben, haben wir jetzt andere Teams, die sich mit Analysen und Metriken für die Protokollierung befassen.
Im Folgenden finden Sie einige zusätzliche Ressourcen, die sich eingehender mit diesem Thema befassen:
quelle