ElasticSearch 6.0新特性介紹

一、稀疏性 Doc Values 的支持:

你們知道 es 的 doc values 是列式存儲,文檔的原始值都是存放在 doc values 裏面的,而稀疏性是指,一個索引裏面,文檔的結構實際上是多樣性的,可是鬱悶的是隻要一個文檔有這個字段,其餘全部的文檔儘管沒有這個字段,可也都要承擔這個字段的開銷,因此會存在磁盤空間的浪費,而這塊的改進就是這個問題。性能

二、Index sorting:

即在索引階段的排序,即咱們查詢的時候有時候會根據某個字段的值進行排序,好比時間、編號等等,若是在索引的時候提取排好序,那麼搜索或聚合的時候就會很是快,相應的直接走預先排序好的索引就好了。固然索引的時候會要增長額外開銷,適合不怎麼變化的索引的場景。排序

三、順序號的支持:

每一個 es 的操做都有一個順序編號,這個屬於 es 內部的一個功能,能夠提供:快速的分片副本恢復或同步;跨數據中心的節點恢復;甚至提供一個 Changes API 等等;繼承

四、無縫滾動升級:

使之可以從 5 的最後一個版本滾動升級到 6 的最後一個版本,不須要集羣的完整重啓。無縫滾動升級,也就是不用停服務,在線升級,補充一下。索引

五、Removal of types:

在 6.0 裏面,開始不支持一個 index 裏面存在多個 type 了,全部的新的 index 都將只有一個虛擬的固定的 type: doc 來代替,基於 type 的 parent-child 關係將經過單獨的 join 字段來實現, type 會在 7.0 完全移除。隊列

六、Index-template inheritance:

索引版本的繼承,目前索引模板是全部匹配的都會合並,這樣會形成索引模板有一些衝突問題, 6.0 將會只匹配一個,索引建立時也會進行驗證。路由

七、Load aware shard routing:

基於負載的請求路由,目前的搜索請求是全節點輪詢,那麼性能最慢的節點每每會形成總體的延遲增長,新的實現方式將基於隊列的耗費時間自動調節隊列長度,負載高的節點的隊列長度將減小,讓其餘節點分攤更多的壓力,搜索和索引都將基於這種機制。文檔

已經關閉的索引將也支持 replica 的自動處理,確保數據可靠。同步

相關文章
相關標籤/搜索