Kuo Elasticsearch skiriasi atitikmuo ir Būlio reikšmė?

Kuo Elasticsearch Skiriasi Atitikmuo Ir Bulio Reiksme



„Elasticsearch“ yra paieškos sistema, naudojanti „Java“ programavimo kalbos „Apache Lucene“ bibliotekas ir kurią naudoja milijonai. Tai leidžia vartotojui saugoti duomenis savo analizės duomenų bazėje, o vartotojas taip pat gali kurti indeksus ir juose saugoti duomenis. Vartotojas taip pat gali taikyti įvairias užklausas, kad gautų duomenis iš lentelių/indeksų ir per tai gautų naudingos informacijos.

Šis vadovas paaiškins skirtumą tarp atitikties ir Būlio užklausų Elasticsearch.







Kas yra Elasticsearch atitikmuo?

„Elasticsearch“ užklausa „Match“ yra labai paprasta, nes joje yra viso teksto sąlyga norint gauti duomenis iš duomenų bazės. Atitikties užklausa paima duomenis iš indekso ir paverčia juos masyvu, o tada iš jo ieško norimų raktinių žodžių, todėl duomenų gavimas tampa efektyvus.



Kas yra Būlio vertė Elasticsearch?

Būlio užklausa Elasticsearch sujungia kelias užklausas į Būlio teiginius ir parodo gautą dokumentą iš duomenų bazės. Būlio užklausa turi keletą sąlygų, kurios yra tokios:



    • privalo
    • filtras
    • turėtų
    • neturi_ne

Kuo Elasticsearch skiriasi atitikmuo ir Būlio reikšmė?

Kitame skyriuje pateikiami pavyzdžiai paaiškinami skirtumai tarp atitikties ir Būlio agregacijos. Atlikite toliau pateiktą procedūrą:





Prisijunkite prie Elasticsearch ir Kibana

Norėdami naudoti Elasticsearch atitikties ir Būlio užklausas, atidarykite terminalą iš Elasticsearch bin katalogo ir naudokite šią komandą:



elasticsearch.bat



Po to eikite į Kibana šiukšliadėžės katalogą iš vietinės sistemos, kad atidarytumėte terminalą ir naudokite šią komandą:

kibana.bat



Norėdami prisijungti prie Elasticsearch, žiniatinklio naršyklėje naudokite vietinį prieglobą su prievado numeriu 9200:

localhost: 9200



Vėlgi, naudokite „localhost“ žiniatinklio naršyklėje, bet su prievado numeriu 5601, kad prisijungtumėte prie „Kibana“ vartotojo sąsajos:

localhost: 5601



Eikite į „ Kūrėjo įrankiai “ pultą iš „Kibana“ puslapio iš paieškos juostos:


Atitikties užklausos sintaksė

Toliau pateikiama pagrindinė užklausos suderinti su GET užklausa duomenims gauti sintaksė:

GAUTI / _Paieška
{
'užklausa' : {
'rungtynės' : {
'žinutė' : {
'užklausa' : 'Čia testas'
}
}
}
}


Aukščiau pateiktas fragmentas siūlo:

    • Kodas prasideda raide a GAUTI prašyti naudojant Paieškos API norėdami gauti duomenis iš duomenų bazėje ir vartotojas gali pridėti indekso pavadinimas po raktinio žodžio GET.
    • The užklausą raktažodyje yra rungtynės sąlyga, kuri gauna žinutę iš indekso arba duomenų bazės ir tada duomenis yra minimas užklausą frazė pabaigoje.

Naudokite atitikties užklausą

Šiame skyriuje paaiškinamas praktinis užklausos atitikties naudojimo pavyzdys ir pateikiami duomenys iš demonstracinis indeksas naudojant a GAUTI prašymas:

GAUTI / demonstracinis indeksas / _Paieška



Naudokite šį kodą, kad atliktumėte atitikties užklausą Elasticsearch svetainėje „ demonstracinis indeksas “, kad pritaikytumėte užklausą „ Vatsonas ' vardas:

GAUTI / demonstracinis indeksas / _Paieška
{
'užklausa' : {
'rungtynės' : {
'vardas' : {
'užklausa' : 'vatsonas'
}
}
}
}



Būlio užklausos sintaksė

Toliau pateikiama pagrindinė Būlio užklausos su GET užklausa duomenims iš duomenų bazės sintaksė:

GAUTI / _Paieška
{
'užklausa' : {
'Bool' : {
'išlyga' : {
'laukas' : 'terminas'
}
}
}
}


Aukščiau pateiktas fragmentas siūlo:

    • The GAUTI užklausa naudojama duomenims iš indekso gauti naudojant paieškos API .
    • The užklausą raktažodyje yra bool užklausai, kurioje yra jos sąlyga kad pritaikytumėte užklausą indeksui arba duomenų bazei, tada duomenis paimamas ir rodomas ekrane.

Naudokite Būlio užklausą

Ši užklausa naudoja Būlio užklausą, kad gautų duomenis iš ' demonstracinis indeksas ' naudojant ' privalo ' sąlygą ir sujungiant dvi užklausas ' Paskyrimas ' su ' vardas “:

GAUTI / demonstracinis indeksas / _Paieška
{
'užklausa' : {
'Bool' : {
'privalo' : [
{
'terminas' : {
'Paskirtis' : „Visapusis“
}
} ,
{
'terminas' : {
'Vardas' : 'Andersonas'
}
}
]
}
}
}


Šis derinys sukurs Būlio sakinį, kad užklausa būtų pritaikyta indeksui:


Tai viskas apie skirtumus tarp atitikties ir Būlio užklausų Elasticsearch.

Išvada

Match ir Boolean yra dvi užklausos, naudojamos Elasticsearch gauti duomenis iš analizės duomenų bazės arba iš vartotojo sukurto indekso. Atitikties užklausa konvertuoja duomenis į masyvus ir paima duomenis iš masyvo, kad procesas būtų efektyvesnis. Būlio užklausa taiko kelias užklausas, kad padarytų vieną teiginį, ir taiko užklausą rodyklėje, kad gautų duomenis. Šiame vadove paaiškinti skirtumai tarp atitikimo ir Būlio užklausų Elasticsearch, norint gauti duomenis iš duomenų bazės.