Elasticsearch搜尋詳解之高亮命中關鍵字

2021-12-30 06:26:00 字數 744 閱讀 9524

通常顯示在網頁上時,用不同顏色標記出搜尋命中的是哪些關鍵字是很有用的,這就要用到highlight 引數。

舉個例子,

get /_search

},"highlight" : ,

"summary" : {}}}

}返回的結果裡面每個 hit 多了乙個類似這樣部分:

"highlight" : 看例子很容易理解,但必須滿足乙個條件,highlight 裡的字段必須是 query 裡有的字段,而且query 的字段不能是 _all。highlight 也有3中,分別介紹。

定製highlight

下面的引數可以改變返回的結果。即可以為單獨的字段設定不同的引數,也可以作為 highlight 的屬性統一定義。

number_of_fragments

fragment是指一段連續的文字。返回結果最多可以包含幾段不連續的文字。預設是5。

fragment_size

一段fragment 包含多少個字元。預設100。

pre_tags

標記 highlight 的開始標籤。例如上面的。

post_tags

標記 highlight 的結束標籤。例如上面的。

encoder

說明字段是否為 html 格式,default:不是,html: 是。

no_match_size

即使欄位中沒有關鍵字命中,也可以返回一段文字,該引數表示從開始多少個字元被返回。

Elasticsearch 條件搜尋

es提供了兩種搜尋的方式 請求引數方式和請求體方式。請求引數方式 curl localhost 9200 bank search?q pretty 其中bank是查詢的索引名稱,q後面跟著搜尋的條件 q 表示查詢所有的內容 請求體方式 推薦這種方式 curl xpost localhost 9200...

Elasticsearch 深入搜尋

結構化搜尋 structured search 是指有關探詢那些具有內在結構資料的過程 在結構化查詢中,我們得到的結果 總是非是即否,要麼存於集合之中,要麼存在集合之外。結構化查詢不關心檔案的相關度或評分 它簡單的對文件包括或排除處理。當進行精確值查詢時,我們會使用過濾器 filters term ...

elasticsearch 搜尋方式

宣告 本文僅僅只是記個筆記 搜尋方式 took 耗費了幾毫秒 timed out 是否超時,這裡沒有 shareds 資料拆成1哥分片,所以對於搜尋請求,會打造所有的primary shard 或者是它的某個replica shard也可以 hits.total 查詢結果的數量,這裡有 3 個 do...