Easysearch壓縮模式深度比較:ZSTD+source_reuse的優勢分析
引言
在使用 Easysearch 時,如何在儲存和查詢效能之間找到平衡是一個常見的挑戰。Easysearch 具備多種壓縮模式,各有千秋。本文將重點探討一種特別的壓縮模式:
zstd + source_reuse
,我們最近重新最佳化了
source_reuse
,使得它在吞吐量和儲存效率方面都表現出色。
測試概覽
測試條件選用了 esrally 工具和 geonames 資料集來進行壓力測試。資料集包含了 11396503 條記錄,往單個 shard 寫入,對以下幾種壓縮模式進行壓測對比:
-
default
-
best_compression
-
zstd
-
zstd + source_reuse
下圖是對 CPU 的監控,可以看到各個模式對 CPU 的使用是基本相近的。
-
default
-
best_compression
-
zstd
-
zstd+reuse
關鍵資料點
測試結果主要圍繞兩個指標:
- 中位吞吐量:單位為“每秒運算元”,數值越大表示效能越好。
- 儲存大小:單位為 “GB”,數值越小表示儲存更加高效。
測試資料如下:
壓縮模式 | 中位吞吐量 (docs/s) | 儲存大小 (GB) |
---|---|---|
default | 37834 | 2.7 |
best_compression | 37404 | 2.2 |
zstd | 38878 | 2.1 |
zstd + source_reuse | 38942 | 1.6 |
zstd + source_reuse:壓縮原理
該模式採用了
source_reuse
壓縮演算法,該演算法透過對
keyword
、
long
、
int
、
short
、
boolean
等型別的欄位值進行復用,並結合 zstd 壓縮演算法,大大提高了儲存效率。
壓縮效率
zstd + source_reuse
在儲存大小上的表現尤為出色,針對 geonames 資料集只需 1.6 GB 的儲存空間,相比於
best_compression
模式的 2.2 GB,壓縮效率顯著提高。
吞吐量表現
高壓縮率並沒有讓
zstd + source_reuse
在吞吐量上做出妥協,因為高壓縮率使得其需要持久化的資料大大減小,其中位吞吐量為 38942 docs/s,在 4 種模式中表現最好。
結論
zstd + source_reuse
壓縮模式在儲存效率和查詢效能之間找到了一種極佳的平衡,強烈推薦各位在使用 Easysearch 時,當儲存成本比較敏感時,考慮使用
zstd + source_reuse
壓縮模式。無論是在儲存成本還是寫入效能方面,它都能為你帶來顯著的優勢。
關於 Easysearch
INFINI Easysearch 是一個分散式的近實時搜尋與分析引擎,核心引擎基於開源的 Apache Lucene。Easysearch 的目標是提供一個輕量級的 Elasticsearch 可替代版本,並繼續完善和支援更多的企業級功能。 與 Elasticsearch 相比,Easysearch 更關注在搜尋業務場景的最佳化和繼續保持其產品的簡潔與易用性。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70029458/viewspace-2988983/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Linux壓縮工具的效能比較Linux
- 大資料中批次壓縮與獨立壓縮的比較 - Bozho大資料
- android 比較靠譜的圖片壓縮Android
- Java不同壓縮演算法的效能比較Java演算法
- Java中對HashMap的深度分析與比較JavaHashMap
- 三種工廠模式的優劣比較模式
- Java中對HashMap的深度分析與比較(轉)JavaHashMap
- PHP的壓縮函式實現:gzencode、gzdeflate和gzcompress比較PHP函式
- AWS Graviton2上資料壓縮演算法效能比較演算法
- RunnerGo相較於Jmeter優劣勢分析GoJMeter
- 深度學習模型壓縮方法概述深度學習模型
- 深度神經網路的壓縮與加速神經網路
- 7z——擁有極高壓縮比的開源壓縮軟體
- 索引的分析和比較索引
- MVVM與MVC模式的比較MVVMMVC模式
- oracle 壓縮備份與普通備份從空間,時間,CPU效能的比較Oracle
- 字串的壓縮和解壓縮字串
- oralce 壓縮表與heap表儲存空間與查詢效能比較
- Java和.NET的GZIP壓縮功能對比Java
- 各壓縮演算法對比演算法
- 【實驗】【索引壓縮】索引壓縮演示及優缺點總結索引
- APP開發模式比較APP模式
- TIM1比較模式模式
- 優先佇列的比較器佇列
- booster分析-App資源壓縮APP
- Ceph Reef(18.2.X)之壓縮演算法和壓縮模式演算法模式
- 關於SQL 2008資料庫壓縮後收縮(database shrink)的測試實驗和效能比較SQL資料庫Database
- 簡單的zip壓縮和解壓縮
- Nginx網路壓縮 CSS壓縮 圖片壓縮 JSON壓縮NginxCSSJSON
- 深度神經網路的壓縮和正則化神經網路
- Xflow軟體與傳統CFD軟體比較有哪些優勢
- 深度學習之圖片壓縮技術深度學習
- 深度學習影象視訊壓縮技術深度學習
- JAVA壓縮和解壓縮Java
- zip壓縮和解壓縮
- LVS三種模式配置及優點缺點比較模式
- 幾個分析函式的比較函式
- aix 檔案的壓縮與解壓縮AI