最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

大量索引場景下 Easysearch 和 Elasticsearch 的吞吐量差異

2023-11-25 21:59 作者:INFINI-Labs  | 我要投稿

最近有客戶在使用 Elasticsearch 搜索服務時發(fā)現(xiàn)集群有掉節(jié)點,并且有 master 收集節(jié)點信息超時的日志,節(jié)點的負載也很高,不只是 data 節(jié)點,master 和協(xié)調節(jié)點的 cpu 使用率都很高,看現(xiàn)象集群似乎遇到了性能瓶頸。
查看了 Hot_threads, 發(fā)現(xiàn)大量線程被權限驗證相關的類和方法占用,主要在 RBACEngine 和 AuthorizationService 兩個類。并且不止協(xié)調節(jié)點和數(shù)據(jù)節(jié)點,master 節(jié)點居然也有那么多權限驗證的操作?

于是懷疑是不是對權限驗證的使用方式不對,在 github 上搜了下,果然發(fā)現(xiàn)有人遇到和我們非常類似的場景。
Improve Authorization performance in clusters with a large number of indices #67987
提到有些個用戶在達到數(shù)千或上萬個索引的場景下,在啟用安全驗證進行寫入數(shù)據(jù)時,服務端幾乎會耗費掉所有 CPU 時間在 transport_worker 線程上進行權限驗證,從而阻塞其他傳入請求,
導致集群的吞吐量下降,下降的程度似乎是 2 倍到 3 倍。
有人建議升級到 7.16 或更高版本來解決這個問題。

為了確認下我們的產(chǎn)品是否有類似現(xiàn)象,我對兩個服務進行了測試對比,由于硬件資源有限,只對單個節(jié)點進行了寫入吞吐的壓測。

測試條件:

  • -Xms3g -Xmx3g
  • 16 邏輯核 CPU
  • 啟用 security 驗證
  • 預先創(chuàng)建了 1000 個索引
  • 每個索引 1 個 shard,3 個別名

采用相同的 loadgen 腳本進行壓測, 壓測命令:./loadgen-linux-amd64 -config loadgen-index_0.yml -d 120 -c 10

即每秒 10 個并發(fā)請求,持續(xù)壓測 120 秒,每個 bulk 請求包含寫入 5000 個 doc,對單個索引進行壓測。

Easysearch 1.0 寫入了 6900000 條。


對比搜索服務 7.3.2 寫入了 5865000 條。

壓測完畢,顯示 Easysearch 的吞吐大約高出了 17%。


測試時觀察 Hot_threads,Easysearch 除了 lucene 的寫入和 merge 線程,未發(fā)現(xiàn)權限驗證相關熱點線程,表明了啟用安全驗證不會對 Easysearch 的寫入造成性能影響。

關于 Easysearch

about easysearch
about easysearch

INFINI Easysearch 是一個分布式的近實時搜索與分析引擎,核心引擎基于開源的 Apache Lucene。Easysearch 的目標是提供一個輕量級的 Elasticsearch 可替代版本,并繼續(xù)完善和支持更多的企業(yè)級功能。 與 Elasticsearch 相比,Easysearch 更關注在搜索業(yè)務場景的優(yōu)化和繼續(xù)保持其產(chǎn)品的簡潔與易用性。

官網(wǎng)文檔:https://www.infinilabs.com/docs/latest/easysearch

下載地址:https://www.infinilabs.com/download


大量索引場景下 Easysearch 和 Elasticsearch 的吞吐量差異的評論 (共 條)

使用qq登录你需要登录后才可以评论。
建水县| 砚山县| 漳州市| 会东县| 黎城县| 濮阳县| 荔波县| 海兴县| 伊春市| 三原县| 奇台县| 许昌县| 监利县| 易门县| 巴楚县| 宁夏| 马公市| 垣曲县| 吴桥县| 顺昌县| 眉山市| 景洪市| 搜索| 巴林右旗| 松原市| 吴桥县| 镇沅| 剑川县| 沙雅县| 成都市| 溆浦县| 姜堰市| 马鞍山市| 阿拉善盟| 盖州市| 谢通门县| 成都市| 东莞市| 北票市| 永登县| 枝江市|