圖解Elasticsearch中的_source、_all、store和index屬性

默認狀況下,Elasticsearch裏面有2分內容,一份是原始文檔,也就是_source字段裏的內容,咱們在Elasticsearch中搜索文檔,查看的文檔內容就是_source中的內容前端

_all字段裏面包含了一個文檔裏面的全部信息,是一個超級字段。以圖中的文檔爲例,若是開啓_all字段,那麼title+content會組成一個超級字段,這個字段包含了其餘字段的全部內容,固然也能夠設置只存儲某幾個字段到_all屬性裏面或者排除某些字段blog

 

關鍵字高亮實質上是根據倒排記錄中的詞項偏移位置,找到關鍵詞,加上前端的高亮代碼。這裏就要說到store屬性,store屬性用於指定是否將原始字段寫入索引,默認取值爲no。若是在Lucene中,高亮功能和store屬性是否存儲息息相關,由於須要根據偏移位置到原始文檔中找到關鍵字才能加上高亮的片斷。在Elasticsearch,由於_source中已經存儲了一份原始文檔,能夠根據_source中的原始文檔實現高亮,在索引中再存儲原始文檔就多餘了,因此Elasticsearch默認是把store屬性設置爲no。索引

注意:若是想要對某個字段實現高亮功能,_source和store至少保留一個。
 文檔

相關文章
相關標籤/搜索