Elasticsearch 7 發佈,Kibana 暗黑模式、集群協調新時代

Elastic Stack 7.0.0 發佈了,Elasticsearch 作為 Elastic Stack 的核心,它是一個分佈式、面向文檔的 RESTful 風格搜索和數據分析引擎,它支持結構化和非結構化查詢,並且不需要提前定義模式。Elasticsearch 可用作搜索引擎,通常用於 Web 級日誌分析、實時應用監控和點擊流分析。

Elasticsearch 7 發佈,Kibana 暗黑模式、集群協調新時代

此版本從超過 10 000 個 PR 中蛻變而來,帶來了一些重大改變。

Kibana 7.0:全新的設計和導航,以及暗黑模式

開發團隊將設計重點放在了內容上,所以 Elasticsearch 分析和搜索儀表板 Kibana 在新版本中變得更加輕量。最突出的變化是切換到了新的全局導航,它引入了一個固定頭部來切換 Kibana 空間、顯示卡片,以及啟動用戶操作,如更改密碼或註銷。

Elasticsearch 7 發佈,Kibana 暗黑模式、集群協調新時代

為實現這一目標並提高一致性,開發團隊創建了 Elastic UI Framework,並且在過去的一年中,幾乎將整個 Kibana 都切換到這個框架的組件上,同時對樣式和樣式表的應用方式進行了大幅簡化。

做完這些之後,隨之而來的是完成了對整個 Kibana 暗黑模式的支持,這是 Kibana 史上極大的一個功能要求。此外,一致性的提高和樣式的簡化,帶來的另一個好處是 Kibana 儀表板現在具有響應式設計,這為顯著提高移動設備可用性打下了基礎。

Elasticsearch 集群協調新時代

作為 Elastic Stack 的核心,Elasticsearch 從一開始就致力於易擴展並適應災難性故障。為了達到這些要求,開發團隊做了許多努力,不僅使單個節點更具可擴展性和可靠性,還持續改進了集群協調層 Zen Discovery。在 7.0 版本中,這兩個方面都有重大改進。

節點

Elasticsearch 中的各個節點在構建時考慮了彈性,如果向節點發送過多請求或請求過大,那麼節點將 push back。這一點通過 Elasticsearch 中的斷路器實現,它會判定節點無法處理給定的請求,並要求客戶端重試。對於具有較小 JVM 堆大小的節點,隨著用戶轉移到集群每租戶(cluster-per-tenant)模型而不是大規模多租戶集群,這些節點變得越來越普遍,節點的彈性顯得更為重要。

在 7.0 中,引入了真正的內存斷路器,它可以更精準地檢測出無法處理的請求,並防止它們使單個節點不穩定。

Zen Discovery

Zen2 是 Elasticsearch 的全新集群協調層,它同時提高了可靠性、性能和用戶體驗,變得更快、更安全,並更易於使用

當前有一些著名的共識算法,比如 Paxos、Raft、Zab 與 Viewstamped Replication(VR),但是 Elasticsearch 集群要求更高的集群變化吞吐量,還要支持輕鬆伸縮集群,並且滾動升級策略要允許系統無縫升級,這些要求是前邊提到的算法無法達到的。

為實現這一目標,開發團隊首先關注於新設計的分佈式一致性算法的理論正確性。此外 Zen2 還包括許多可以降低人為錯誤可能性的變化,並提供了從災難性故障中恢復時更清晰的選擇。

相關性和速度改進

相關性和速度是良好搜索體驗的基石, Elasticsearch 7.0 引入了幾個基本功能對此進行優化:

  • 更快的前 k 個查詢:在許多搜索用例中,快速查看查詢的前 k 個結果對於用戶而言比確切的命中數更重要。例如,如果有人在電子商務網站上搜索產品,他們對 10 個最相關的結果更感興趣,而不是與搜索查詢匹配的其他 120 897 個結果。Elasticsearch 7.0 和 Lucene 8.0 實現了一種新算法 Block-Max WAND,可在巨幅提升檢索命中前 k 個結果的速度。
  • 間隔查詢:諸如法律和專利搜索的一些搜索用例中,有查找單詞或短語彼此相距一定距離的記錄的需要,Elasticsearch 7.0 中的間隔查詢引入了一種構建此類查詢的全新方式,與之前的方法 span 查詢相比,使用和定義更加簡單,同時對邊緣情況的適應性更強。
  • Function score 2.0:自定義評分是高級搜索用例的基礎,人們希望更好地控制相關性和結果排名,Elasticsearch 從早期就提供了這樣的能力。7.0 引入了下一代 function score,提供了一種更簡單、模塊化與靈活的方式來生成每條記錄的排名分數。新的模塊化結構允許用戶混合和匹配一組算術和距離函數,以構建任意函數分值計算,更好地控制結果的分值和排名。

此外,Elasticsearch 7.0 中還引入了一個新的聚合來處理地理地圖圖塊,允許用戶在地圖上放大和縮小,而不會改變結果數據的形狀,實現更加平滑地縮放 Elastic Maps;使用納秒精度存儲時序數據的時間戳,允許具有高頻數據採集需求的用戶可以更加精確地存儲和排序他們的數據。

詳情查看發佈公告,下載地址:


分享到:


相關文章: