Բարդ հարցումները ElasticSearch-ում ամենաշատ օգտագործվող գործառույթներից են, և դրանց թվում է bool հարցումը, որտեղ իսկապես առանձնանում է ElasticSearch-ը: Ըստ Elastic-ի՝ հարցում, որը համապատասխանում է այլ հարցումների բուլյան համակցություններին համապատասխանող փաստաթղթերին: Bool հարցումը քարտեզագրվում է Lucene BooleanQuery-ին:
Ինչպե՞ս կարող եմ օգտագործել bool query Elasticsearch:
Elasticsearch Բուլյան դրույթներ
- զտիչ – Զտիչն օգտագործվում է տվյալների հավաքածուն համադրելու համար; փաստաթուղթը կա՛մ կտեղավորվի ֆիլտրի մեջ, կա՛մ կբացառվի դրանով: …
- must – Պարտադիրը նման է «և» օպերատորին, որն օգտագործվում է Google որոնում կատարելիս: …
- must-not – Must_not-ը նման է «not» օպերատորին, որն օգտագործվում է Google որոնում կատարելիս:
Պետք է հարցնել Elasticsearch?
Զտված հարցման փոխարեն, մեկը պետք է օգտագործի bool հարցումը վերին մակարդակում: Եթե ձեզ չի հետաքրքրում պարտադիր մասերի միավորը, ապա դրեք այդ մասերը ֆիլտրի ստեղնի մեջ: Ոչ մի միավոր նշանակում է ավելի արագ որոնում: Բացի այդ, Elasticsearch-ը ավտոմատ կերպով կպարզի՝ արդյոք դրանք քեշավորել և այլն:
Ի՞նչ է տերմինային հարցումը Elasticsearch-ում:
Ժամկետային հարցումների խմբագրում: Վերադարձնում է փաստաթղթեր, որոնք պարունակում են ճշգրիտ տերմին նշված դաշտում: Դուք կարող եք օգտագործել հարցում տերմինը՝ փաստաթղթեր գտնելու համար՝ հիմնված ճշգրիտ արժեքի վրա, ինչպիսիք են գինը, ապրանքի ID-ն կամ օգտվողի անունը: … Լռելյայնորեն, Elasticsearch-ը փոխում է տեքստային դաշտերի արժեքները որպես վերլուծության մաս:
Ի՞նչ է դրույթը Elasticsearch-ում:
կետը (հարցումը) պետք է հայտնվի համապատասխան փաստաթղթերում: … կետը (հարցումը) չպետք է հայտնվի համապատասխան փաստաթղթերում: Դրույթները կատարվում են ֆիլտրի համատեքստում, ինչը նշանակում է, որ միավորները անտեսվում են, և կետերը համարվում են քեշավորման համար: Քանի որ միավորը անտեսվում է, բոլոր փաստաթղթերի համար 0 միավորը վերադարձվում է: