ElasticSearch -Datenbank
ElasticSearch ist eine der beliebtesten NOSQL-Datenbanken, mit der textbasierte Daten gespeichert und gesucht werden können. Es basiert auf der Lucene -Indexierungstechnologie und ermöglicht das Abrufen von Suchern in Millisekunden auf der Grundlage von Daten, die indexiert sind.
Basierend auf der Elasticsearch -Website finden Sie hier die Definition:
Elasticsearch ist eine Open -Source -Verteilte, erholsame Such- und Analytics -Engine, mit der eine wachsende Anzahl von Anwendungsfällen gelöst werden kann.
Das waren einige hochrangige Worte über Elasticsarch. Lassen Sie uns die Konzepte hier im Detail verstehen.
Vertikales und horizontales Scailing
Erste Schritte mit der Elasticsearch -Datenbank
Um Elasticsearch zu verwenden, muss es auf der Maschine installiert werden. Lesen Sie dazu die Installation Elasticsearch auf Ubuntu.
Stellen Sie sicher.
Elasticsearch: Konzepte und Komponenten
In diesem Abschnitt werden wir sehen, welche Komponenten und Konzepte im Herzen von Elasticsarch liegen. Das Verständnis dieser Konzepte ist wichtig zu verstehen, wie ES funktioniert:
Aufgrund des Konzepts der horizontalen Skalierung können wir praktisch eine unendliche Anzahl von Knoten in einem ES -Cluster hinzufügen, um ihm viel mehr Kraft- und Indexierungsfunktionen zu verleihen.
Beachten Sie, dass die Typen von ES v6 veraltet sind.0.0 ab. Lesen Sie hier, warum dies getan wurde.
Sucharten in Elasticsearch
Elasticsearch ist bekannt für seine nahezu Echtzeit-Suchfunktionen und die Flexibilität, die es zur Verfügung stellt. Lassen Sie uns untersuchen, wie Sie die Suche mit verschiedenen Datenarten verwenden.
Eine Match -Abfrage findet alle drei Dokumente bei der Suche nach Ball schlug. Eine Proximity -Suche kann uns sagen, wie weit diese beiden Wörter in derselben Zeile oder in denselben Absatz erscheinen.
SQL -Abfragen: Partial Matching
Wo Name "%John%" wie
Und nennen Sie "%Red%"
Und nennen Sie wie "%garten%"
Bei einigen Gelegenheiten müssen wir nur teilweise Übereinstimmungsabfragen ausführen, auch wenn sie als Brute-Force-Techniken betrachtet werden können.
Integration mit Kibana
Wenn es um eine Analyse-Engine geht, müssen wir normalerweise Analyseabfragen in einer Business-Intelligence-Domäne (BI) ausführen. Wenn es um Business -Analysten oder Datenanalysten geht, ist es nicht fair anzunehmen, dass die Leute eine Programmiersprache kennen, wenn sie die in ES Cluster vorhandenen Daten visualisieren möchten. Dieses Problem wird von Kibana gelöst.
Kibana bietet BI so viele Vorteile, dass Menschen Daten tatsächlich mit einem ausgezeichneten, anpassbaren Dashboard visualisieren und Daten inetraktiv sehen können. Schauen wir uns hier einige seiner Vorteile an.
Interaktive Diagramme
Im Kern von Kibana befinden sich interaktive Diagramme wie diese:
Kibana wird mit verschiedenen Arten von Diagrammen wie Kreisdiagrammen, Sunbursts, Histogrammen und vielem mehr unterstützt, die die vollständigen Aggregationsfunktionen von ES nutzen.
Unterstützung zu Kartierung
Kibana unterstützt auch eine vollständige Geo-Aggregation, die es uns ermöglicht, unsere Daten zu Geo-Map. Ist das nicht cool??!
Vorgefertigte Aggregationen und Filter
Bei vorgefertigten Aggregationen und Filtern ist es möglich, buchstäblich zu frequentierte Abfragen innerhalb des Kibana-Dashboards zu sprengen, zu fallen und zu betreiben. Mit nur wenigen Klicks ist es möglich, aggregierte Abfragen auszuführen und Ergebnisse in der Form interaktiver Diagramme vorzustellen.
Einfache Verteilung der Dashboards
Mit Kibana ist es auch sehr einfach, Dashboard. Wir können Dashboards leicht in unser internes Wiki oder Webseiten einfügen.
Feature -Bilder aufgenommen Form Kibana Produktseite.
Mit Elasticsarch
Um die Instanzdetails und die Clusterinformationen anzuzeigen, führen Sie den folgenden Befehl aus:
Jetzt können wir versuchen, einige Daten mit dem folgenden Befehl in ES einzuführen:
Daten einfügen
Locke \
-X post 'http: // localhost: 9200/linuxHint/hello/1' \
-H 'Inhaltstyp: application /json' \
-D '"Name": "LinuxHint"' \
Hier ist, was wir mit diesem Befehl zurückbekommen:
Versuchen wir jetzt, die Daten zu erhalten:
Daten erhalten
curl -x erhalten 'http: // localhost: 9200/linuxHint/hello/1'
Wenn wir diesen Befehl ausführen, erhalten wir die folgende Ausgabe:
Abschluss
In dieser Lektion haben wir uns angesehen, wie wir mit Elasticsearch beginnen können, eine hervorragende Analyse-Engine und bietet auch eine hervorragende Unterstützung für die Free-Time-Free-Text-Suche in Echtzeit.