Preskoči na vsebino
100% lokalno

Elasticsearch graditelj povprašev

Pretvorite seznam pogojev polja/operatorja/vrednosti v Elasticsearch bool povpraševanje.

Izhod

Elasticsearch graditelj povprašev

Prilepite seznam pogojev in to orodje sestavi celoten zahtevek za iskanje v Elasticsearch: bool povpraševanje z vejavami must, should, must_not in filter, skupaj s sortiranjem, razdeljevanjem na strani in izbirno agregacijo. Primerno je za vse, ki ročno pišejo povpraševanja za Kibana Dev Tools, REST klient ali aplikacijski sloj iskanja in bi raje opisali pogoje kot da bi vsakič ponovno napisali JSON skeleto.

Vsak pogoj je ena vrstica v polju Pogoji: izbirna veja (must, should, must_not, filter), ime polja, izbirna vrsta pogoja (term za natančno ujemanje, match za iskanje po celotnem besedilu, range za primerjave, exists za preverjanje prisotnosti polja) in vrednost — ločena s podpičjem. "filter price range 100..500" gradi klauzulo range; "should title match wireless headphones" gradi iskanje po besedilu na frazi; "must email exists" preveri, ali je polje nastavljeno. Če vrsto izpustite, jo Privzeta vrsta pogoja izpolni; če vejo izpustite, jo Privzeta veja naredi enako, zato že preprost seznam kot "status active; category electronics" ustvari veljavno povpraševanje.

Ploščo možnosti pokriva preostanek pravega zahtevka za iskanje: Polje sortiranja in vrstni red dodajata klauzulo sort, Velikost strani in Odmik nadzirujeta from/size razdeljevanje, Agregacija pa vključi terms ali date_histogram vedro na izbrano polje. Izpostavite ujemanja doda blok highlight za vse pogojem match, Različica jezika povpraševanja pa sledi track_total_hits, ki je na voljo samo od Elasticsearch 7 dalje.

Vse se dogaja v vašem brskalniku — pogoji, ki jih tipkate, in povpraševanje, ki se pojavi, nikoli niso nikamor poslani. Rezultat kopirajte neposredno v Kibana Dev Tools ali telo zahtevka, ga prenesite kot datoteko .txt ali pošljite rezultat nazaj na vnos in ga nadaljujte s nadaljnjim dostopom.

FAQ

Kako napišem pogoj?
En redek na pogoj, ločen s podpičjem: izbirna veja, ime polja, izbirna vrsta, nato vrednost — na primer "must status term active; filter price range 100..500".
Kaj pomenijo term, match, range in exists?
term se natančno ujema s poljem, match pretražuje besedilo, range primerja polje s smernicami (napišite "min..max", "min..", "..max" ali ">=5"), exists pa le preveri, ali je polje prisotno — vrednost ni potrebna.
Kaj se zgodi, če izpustim vejo ali vrsto?
Možnosti Privzeta veja in Privzeta vrsta pogoja izpolnita kateri koli del, ki ga vrstica izpusti, zato tudi preprosta vrstica "polje vrednost" ustvari veljaven pogoj.
Ali povpraševanje deluje z vsako različico Elasticsearch-a?
Bool povpraševanje, sortiranje, razdeljevanje, agregacije in poudarjanje so stabilni od Elasticsearch 6. Možnost Različica jezika povpraševanja spremeni samo en detalj: track_total_hits, ki je bil predstavljen v Elasticsearch 7 in je izpuščen za povpraševanje 6.x.
Ali so moji podatki povpraševanja naloženi nekje?
Ne. Povpraševanje je sestavljeno v celosti v vašem brskalniku iz pogojev in možnosti, ki jih vnesete — nič se ne pošlje na strežnik.