Koja je razlika između nejasnog upita i upita podudaranja?

Koja Je Razlika Izmedu Nejasnog Upita I Upita Podudaranja



Elasticsearch je dobro poznata, besplatna, analitička i distribuirana tražilica i baza podataka otvorenog koda koja se koristi za upravljanje raznim vrstama podataka. To je isključivo NoSQL baza podataka i radi drugačije od tipičnih SQL i relacijskih baza podataka. Elasticsearch koristi upite DSL ((Domain Specific Language) i REST API-je za upravljanje i analizu podataka. Različite vrste upita postoje u Elasticsearchu kao što su neizraziti upit, upit podudaranja, upit sa zamjenskim znakom, upit s prefiksom i mnogi drugi. Ovi upiti rade drugačije jedni od drugih.

Ovaj post pokazuje na:

Što je 'nejasan' upit?

' mutan ” upit je Query DSL koji izvodi druge operacije pretraživanja kao što je promjena znaka, umetanje znaka ili uklanjanje znaka na temelju “ Levenshtein uredi udaljenost ” udaljenost. Obično pronalazi razliku između pojmova i vraća rezultat u dokumentu koji je bliži ili gotovo sličan traženom pojmu.







Što je upit za 'podudaranje'?

' odgovarati ” upit je druga vrsta Query DSL-a koji se koristi za podudaranje ili pretraživanje zadanih podataka kao što su niz, broj ili tekst. To je ' puni tekst ” temelji se na upitu i izvodi pretraživanje cijelog teksta te vraća rezultate koji točno odgovaraju traženom pojmu. Ako pojam ne odgovara traženom pojmu, vratit će nulti niz ili false.



Razlika između 'fuzzy' i 'match' upita

oboje' mutan ' i ' odgovarati ” upiti se koriste u svrhu pretraživanja. Ključna razlika između ova dva upita je u tome što 'fuzzy' upit čini nejasno pretraživanje i vraća rezultat koji je sličan ili blizak traženom pojmu. Nasuprot tome, upit 'podudaranje' vraća rezultate koji točno odgovaraju traženom pojmu.



Za bolje razumijevanje slijedite dolje navedene primjere:





Primjer 1: Nejasno pretraživanje pomoću 'nejasnog' upita

Pretpostavimo da korisnik želi pronaći dokument koji ima ' Oznaka ” vrijednost kao “ Autor ”. Napravimo pretragu koja će pronaći bliže podudaranje. Da biste to učinili, upotrijebite ' mutan ' upit za pretraživanje dokumenta koji ima ' Oznaka ” vrijednost jednaka ili bliža “ Autor ”:

PREUZMITE linuxhint / _traži

{

'upit' : {

'mutno' : {

'Oznaka' : 'Autor'

}

}

}

Donji izlaz pokazuje da dokument koji ima ID ' 1 ' ima ' Oznaka ” vrijednost blizu “ Autor ” traženi pojam:



Ali ako gornji primjer primijeni ' odgovarati ' upit, poslat će ' nulti niz ” jer vraća izraz koji se točno podudara.

Primjer 2: Neizrazito pretraživanje korištenjem upita 'Podudaranje'.

Uzmimo isti primjer i primijenimo ' odgovarati ' upit za pronalaženje dokumenta koji ima ' Oznaka ” vrijednost kao “ Autor ”:

PREUZMITE linuxhint / _traži

{

'upit' : {

'podudaranje' : {

'Oznaka' : 'Autor'

}

}

}

Izlaz u nastavku pokazuje da je ' odgovarati ” upit ne pronalazi bliže rezultate i vraća “ ništavan ” niz:

Promijenimo traženu vrijednost iz ' Autor ” do “ Autor ' i pokrenite ' odgovarati ” upit kao što je prikazano u nastavku:

PREUZMITE linuxhint / _traži

{

'upit' : {

'podudaranje' : {

'Oznaka' : 'Autor'

}

}

}

Ovdje možete vidjeti ' odgovarati ” upit vraća dokument koji ima ID “ 1 ”. Budući da dokument 1 točno odgovara traženim pojmovima:

To je sve o razlici između ' mutan ' upit i ' odgovarati ” upit.

Zaključak

' mutan ” upit se koristi za izradu nejasnog pretraživanja i vraća rezultate koji se blisko podudaraju s traženim pojmom. Međutim ' odgovarati ” upit ne podržava nejasno pretraživanje i vraća rezultate koji točno odgovaraju traženom pojmu. Ovaj je blog ilustrirao razliku između nejasnog upita i upita podudaranja.