Daten anreichern mit Elasticsearch 8.x – Teil 2: CSV-Upload und mehrere Quellindizes

Veröffentlicht am 28.01.2023

« Alle Vorträge ansehen Kontaktieren Sie uns
Enrich Data with Elasticsearch 8.x - Part 2: CSV Upload and Multiple Source Indices

Einführung

Code auf Github: Elasticsearch-Datenanreicherung

Wenn Sie Elasticsearch und Kibana noch nicht eingerichtet haben, dann Befolgen Sie diese Anweisungen.

Dieses Video setzt voraus, dass Sie Öffentlich signierte Zertifikate. Wenn Sie Selbstsignierte Zertifikate, hier klicken Wird noch bekannt gegeben.

Anforderungen

Verfahren

Datei user.csv aufnehmen [05:15]

Gehen Sie in Kibana zu Maschinelles Lernen > Datenvisualisierer. Wir werden den Datenupload damit durchführen, wie im Bild unten gezeigt:

Upload data Daten hochladen

Laden Sie anschließend die Datei user.csv hoch. Geben Sie ihr den Indexnamen user, und klicken Sie dann auf Import.Um zu bestätigen, dass der Index erstellt wurde, gehen Sie zu Stapelverwaltung > Indexverwaltung. Und Sie sollten ein ähnliches Ergebnis wie im Bild unten sehen:

Index created succesfully Index erfolgreich erstellt

Um die Daten anzuzeigen, gehen Sie zu Entwicklertools > Konsole in Kibana. und führen Sie eine Suche mit dem folgenden Befehl durch:

GET user/_search

und Sie sollten ein Ergebnis ähnlich dem folgenden sehen:

Quereyed data Abgefragte Daten

Aufnahme von location.csv (Feldtyp „geo_point“) [09:35]

Gehen Sie in Kibana zu Maschinelles Lernen > Datenvisualisierer. Laden Sie anschließend die Daten der Datei location.csv hoch. Geben Sie ihr den Indexnamen location, und ändern Sie dann die point > type aus keyword.

Mappings Change: Before Mapping-Änderung: Vorher

Zu geo_point, wie im Bild unten gezeigt:

Mappings Change: After Mappings ändern: Nach

und klicken Sie dann auf Import.

Um zu bestätigen, dass der Index erstellt wurde, gehen Sie zu Stapelverwaltung > Indexverwaltung. Und Sie sollten ein ähnliches Ergebnis wie im Bild unten sehen:

Index created succesfully Index erfolgreich erstellt

Um die Daten anzuzeigen, gehen Sie zu Entwicklertools > Konsole in Kibana. und führen Sie eine Suche mit dem folgenden Befehl durch:

GET location/_search

und Sie sollten ein Ergebnis ähnlich dem folgenden sehen:

Quereyed data Abgefragte Daten

Ingest member_type.csv (Integer_Range-Feldtyp) [11:47]

Gehen Sie in Kibana zu Maschinelles Lernen > Datenvisualisierer. Laden Sie anschließend die Datei member_type.csv hoch. Geben Sie ihr den Indexnamen member_type, und ändern Sie dann die price_range > type aus keyword.

Mappings Change: Before Mappings Change: Before

Zu integer_range, und fügen Sie außerdem Folgendes in den Pipeline-Abschnitt ein

{ "json" : { "field" : "price_range" } },

wie im Bild unten gezeigt:

Mappings Change: After Mappings ändern: Nach

und klicken Sie dann auf Import.

Um zu bestätigen, dass der Index erstellt wurde, gehen Sie zu Stapelverwaltung > Indexverwaltung. Und Sie sollten ein ähnliches Ergebnis wie im Bild unten sehen:

Index created succesfully Index erfolgreich erstellt

Um die Daten anzuzeigen, gehen Sie zu Entwicklertools > Konsole in Kibana. und führen Sie eine Suche mit dem folgenden Befehl durch:

GET member_type/_search

und Sie sollten ein Ergebnis ähnlich dem folgenden sehen:

Quereyed data Abgefragte Daten

Richtlinien einrichten [14:50]

Benutzerrichtlinie einrichten [15:00]

Gehen Sie in Kibana zu Entwicklertools > Konsole. Fügen Sie den folgenden Befehl in die Konsole ein und führen Sie den Policy-Befehl aus:

PUT /_enrich/policy/user_policy { "match": { "indices": "user", "match_field": "email", "enrich_fields": ["first_name", "last_name", "city", "zip", "state"] } }

Verwenden Sie den folgenden Befehl, um einen erweiterten Index für die Richtlinie zu erstellen.

PUT /_enrich/policy/user_policy/_execute

Nach dem Ausführen sollte ein ähnliches Ergebnis wie im Bild unten erscheinen.

Console result for user policy enrich Konsolenergebnis für die Benutzerrichtlinienanreicherung

Um zu bestätigen, dass der Index erfolgreich angereichert wurde, gehen Sie zu Stapelverwaltung > Indexverwaltung, schalten Sie die Versteckte Indizes einschließen Klicken Sie auf „Ein“ und laden Sie die Indizes neu. Das Ergebnis sollte dem unten stehenden Bild ähneln:

Index for user enriched succesfully Index für Benutzer erfolgreich angereichert

Standortrichtlinie einrichten [16:16]

Gehen Sie in Kibana zu Entwicklertools > Konsole. Fügen Sie den folgenden Befehl in die Konsole ein und führen Sie den Policy-Befehl aus:

PUT /_enrich/policy/location_policy { "match": { "indices": "location", "match_field": "location_id", "enrich_fields": ["point"] } }

Verwenden Sie den folgenden Befehl, um einen erweiterten Index für die Richtlinie zu erstellen.

PUT /_enrich/policy/location_policy/_execute

Nach dem Ausführen sollte ein ähnliches Ergebnis wie im Bild unten erscheinen.

Console result for location policy enrich Konsolenergebnis für die Standortrichtlinienanreicherung

Um zu bestätigen, dass der Index erfolgreich angereichert wurde, gehen Sie zu Stapelverwaltung > Indexverwaltung, schalten Sie die Versteckte Indizes einschließen Klicken Sie auf „Ein“ und laden Sie die Indizes neu. Das Ergebnis sollte dem unten stehenden Bild ähneln:

Index for location enriched succesfully Index für Standort erfolgreich angereichert

Member_Type-Richtlinie einrichten [17:05]

Gehen Sie in Kibana zu Entwicklertools > Konsole. Fügen Sie den folgenden Befehl in die Konsole ein und führen Sie den Policy-Befehl aus:

PUT /_enrich/policy/member_type_policy { "range": { "indices": "member_type", "match_field": "price_range", "enrich_fields": ["member_type"] } }

Verwenden Sie den folgenden Befehl, um einen erweiterten Index für die Richtlinie zu erstellen.

PUT /_enrich/policy/member_type_policy/_execute

Nach dem Ausführen sollte ein ähnliches Ergebnis wie im Bild unten erscheinen.

Console result for member_type policy enrich Konsolenergebnis für die Anreicherung der Mitgliedstyprichtlinie

Um zu bestätigen, dass der Index erfolgreich angereichert wurde, gehen Sie zu Stapelverwaltung > Indexverwaltung, schalten Sie die Versteckte Indizes einschließen Klicken Sie auf „Ein“ und laden Sie die Indizes neu. Das Ergebnis sollte dem unten stehenden Bild ähneln:

Index for member_type enriched succesfully Index für Mitgliedstyp erfolgreich angereichert

Signup.csv aufnehmen (mehrere Quellindizes) [17:45]

Gehen Sie in Kibana zu Maschinelles Lernen > Datenvisualisierer. Laden Sie anschließend die Daten der Datei signup.csv hoch. Geben Sie ihr den Indexnamen Melden Sie sich an.

Mappings And Pipeline Change: Before Mappings und Pipeline-Änderungen: Vorher

Fügen Sie dem Mapping-Abschnitt Folgendes hinzu:

"geo": { "properties": { "point": { "type": "geo_point" } } }

und fügen Sie außerdem Folgendes in den Pipeline-Abschnitt ein

{ "enrich" : { "description": "Add 'user' data based on 'email'", "policy_name": "user_policy", "field" : "email", "target_field": "user", "max_matches": "1" } }, { "enrich" : { "description": "Add 'member_type' data based on 'paid_amount'", "policy_name": "member_type_policy", "field" : "paid_amount", "target_field": "member_type", "max_matches": "1" } }, { "enrich" : { "description": "Add 'geo' data based on 'location_id'", "policy_name": "location_policy", "field" : "location_id", "target_field": "geo", "max_matches": "1" } },

wie im Bild unten gezeigt:

Mappings Change: After Mappings Change: After

und klicken Sie dann auf Import.

Um zu bestätigen, dass der Index erstellt wurde, gehen Sie zu Stapelverwaltung > Indexverwaltung. Und Sie sollten ein ähnliches Ergebnis wie im Bild unten sehen:

Index created succesfully Index erfolgreich erstellt

Um die Daten anzuzeigen, gehen Sie zu Entwicklertools > Konsole in Kibana. und führen Sie eine Suche mit dem folgenden Befehl durch:

GET signup/_search

und Sie sollten ein Ergebnis ähnlich dem folgenden sehen:

Quereyed data Abgefragte Daten

Testdaten mit Visualisierung [23:40]

Gehen Sie in Kibana zu Visualize-Bibliothek und klicken Sie auf Neue Visualisierung erstellen, und wählen Sie dann Karten aus den Optionen und klicken Sie dann auf Ebene hinzufügen, und wählen Sie eine Wärmekarte, klicken Sie auf Datenansicht und wählen Sie Melden Sie sich an.

Sie sollten ein Ergebnis ähnlich dem folgenden sehen:

Heat Map selection Heatmap-Auswahl

und klicken Sie dann auf Add layer.

Jetzt im Metriken Wählen Sie Folgendes aus:

Aggregation: Sum Field: paid_amount

Speichern Sie nun die Karte, indem Sie auf Speichern und zum Dashboard gehen

Save the heat map Speichern der Heatmap

Speichern Sie das Dashboard unter Demo-Dashboard.

Erstellen Sie eine zweite Visualisierung, indem Sie die erforderlichen Metriken per Drag & Drop von der linken auf die rechte horizontale Achse ziehen und wählen Sie Summe auf der vertikalen Achse, wie im Bild unten gezeigt:

2nd visualization 2. Visualisierung

Then click on Speichern und zurückgeben.

Erstellen Sie eine dritte Visualisierung, indem Sie die erforderlichen Metriken per Drag & Drop von der linken auf die rechte horizontale Achse ziehen und wählen Sie Summe auf der vertikalen Achse, wie im Bild unten gezeigt:

3rd visualization 3. Visualisierung

Then click on Speichern und zurückgeben.

All three visualization Alle drei Visualisierungen