我正試圖優化我的elasticsearch。 我有幾個布爾字段,我用查詢。 我可以放棄它們,但這會給我的客戶端帶來很大的困難。在elasticsearch中是否需要布爾型字段索引
我的問題是,將這些字段設置爲"index":"yes"
是否會對索引的性能產生顯着的負面影響,例如索引時間和大小(除了明顯的「存儲」空間外)?
布爾索引字段真的佔用更多空間嗎?看來它不應該。此外,我不認爲爲任何數據庫創建這樣的索引都有好處,不僅僅是彈性搜索。
但是,我必須指定"index":"yes"
能夠按它過濾,對吧?
你說的話很有意義。 我的直覺是,如果我有一個布爾型字段的索引,那麼使用該布爾型索引,則轉到布爾索引中用於文檔ID散列的位置,並查看它是否屬於「true」或「假」組。 與存儲中doc_id的散列值相同的效果,並查看字段值? 本質上我沒有看到檢查一個項目是否在一個集合中(真或假)的計算工作量小於在服務器端檢查該字段值的工作量。 – eran
當然,但你正在做一個查找或搜索? 我正在做一個搜索,即:給我docs myfield = true。 如果您已經擁有文檔ID並想知道該字段的值,爲什麼要使用索引? – ramseykhalaf
我正在做一個搜索(/ filter)。我明白你在說什麼。謝謝! – eran