Was ist der Unterschied zwischen Fuzzy-Abfrage und Match-Abfrage?

Was Ist Der Unterschied Zwischen Fuzzy Abfrage Und Match Abfrage



Elasticsearch ist eine bekannte, kostenlose, quelloffene, analytische und verteilte Suchmaschine und Datenbank, die zur Verwaltung verschiedener Datentypen verwendet wird. Es handelt sich um eine reine NoSQL-Datenbank und funktioniert anders als typische SQL- und relationale Datenbanken. Elasticsearch verwendet Abfrage-DSL (Domänenspezifische Sprache) und REST-APIs, um die Daten zu verwalten und zu analysieren. In Elasticsearch gibt es verschiedene Arten von Abfragen, wie z. B. Fuzzy-Abfrage, Übereinstimmungsabfrage, Platzhalterabfrage, Präfixabfrage und viele mehr. Diese Abfragen funktionieren unterschiedlich von einander.

Dieser Beitrag zeigt Folgendes:

Was ist eine „Fuzzy“-Abfrage?

Der ' verschwommen „Abfrage ist eine Abfrage-DSL, die andere Suchvorgänge ausführt, wie etwa das Ändern des Zeichens, das Einfügen des Zeichens oder das Entfernen des Zeichens basierend auf „ Levenshtein-Bearbeitungsentfernung ' Distanz. Es findet normalerweise den Unterschied zwischen Begriffen und gibt das Ergebnis in einem Dokument zurück, das dem gesuchten Begriff näher oder fast ähnlich ist.







Was ist eine „Match“-Abfrage?

Der ' übereinstimmen „Abfrage ist eine andere Art von Abfrage-DSL, die verwendet wird, um die angegebenen Daten wie Zeichenfolge, Zahl oder Text abzugleichen oder zu durchsuchen. Es ist ein ' voller Text ”-basierte Abfrage und führt eine Volltextsuche durch und gibt die Ergebnisse zurück, die genau mit dem gesuchten Begriff übereinstimmen. Wenn der Begriff nicht mit dem Suchbegriff übereinstimmt, wird eine Nullzeichenfolge oder „false“ zurückgegeben.



Unterschied zwischen „Fuzzy“- und „Match“-Abfrage

Beide ' verschwommen ' Und ' übereinstimmen „Abfragen werden zu Suchzwecken verwendet. Der Hauptunterschied zwischen diesen beiden Abfragen besteht darin, dass die „Fuzzy“-Abfrage eine Fuzzy-Suche durchführt und ein Ergebnis zurückgibt, das dem gesuchten Begriff ähnelt oder diesem nahe kommt. Im Gegensatz dazu liefert die „Match“-Abfrage die Ergebnisse, die genau mit dem gesuchten Begriff übereinstimmen.



Zum besseren Verständnis folgen Sie den unten aufgeführten Beispielen:





Beispiel 1: Fuzzy-Suche mit „Fuzzy“-Abfrage

Angenommen, der Benutzer möchte das Dokument finden, das „ Bezeichnung „Wert als“ Autor “. Lassen Sie uns eine Suche durchführen, die eine nähere Übereinstimmung findet. Nutzen Sie dazu die „ verschwommen ”-Abfrage, um ein Dokument zu durchsuchen, das ein „ Bezeichnung ” Wert gleich oder näher an „ Autor ”:

Holen Sie sich Linuxhint / _suchen

{

'Abfrage' : {

„unscharf“ : {

'Bezeichnung' : 'Autor'

}

}

}

Die folgende Ausgabe zeigt, dass das Dokument die ID „ 1 ' hat ein ' Bezeichnung ” Wert nahe dem „ Autor ” gesuchter Begriff:



Aber wenn das obige Beispiel angewendet wird durch „ übereinstimmen ”-Anfrage, es wird ein „ Nullzeichenfolge ” da es den genau passenden Begriff zurückgibt.

Beispiel 2: Fuzzy-Suche mit „Match“-Abfrage

Nehmen wir das gleiche Beispiel und wenden das „ übereinstimmen ”-Abfrage, um das Dokument zu finden, das das „ Bezeichnung „Wert als“ Autor ”:

Holen Sie sich Linuxhint / _suchen

{

'Abfrage' : {

'übereinstimmen' : {

'Bezeichnung' : 'Autor'

}

}

}

Die folgende Ausgabe zeigt, dass „ übereinstimmen Die Abfrage findet keine näheren Ergebnisse und gibt ein „ Null ” Zeichenfolge:

Ändern wir den gesuchten Wert von „ Autor ' Zu ' Autor ” und führen Sie den Befehl „ übereinstimmen ” Abfrage wie unten gezeigt:

Holen Sie sich Linuxhint / _suchen

{

'Abfrage' : {

'übereinstimmen' : {

'Bezeichnung' : 'Autor'

}

}

}

Hier sehen Sie das „ übereinstimmen „Abfrage gibt das Dokument mit der ID zurück“ 1 “. Weil Dokument 1 genau mit den gesuchten Begriffen übereinstimmt:

Darin liegt der Unterschied zwischen einem „ verschwommen ”-Abfrage und ein „ übereinstimmen ' Abfrage.

Abschluss

Der ' verschwommen Die Abfrage „“ wird verwendet, um eine Fuzzy-Suche durchzuführen und die Ergebnisse zurückzugeben, die dem gesuchten Begriff am nächsten kommen. Allerdings ist die „ übereinstimmen Die Abfrage unterstützt keine Fuzzy-Suche und gibt Ergebnisse zurück, die genau mit dem gesuchten Begriff übereinstimmen. Dieser Blog hat den Unterschied zwischen Fuzzy-Abfrage und Match-Abfrage veranschaulicht.