全部產品
Search
文件中心

Elasticsearch:使用索引壓縮外掛程式beta版本(codec-compression)

更新時間:Jun 30, 2024

codec-compression是Elasticsearch(簡稱ES)團隊自主開發的索引壓縮外掛程式,支援brotli和zstd壓縮演算法,具有更高的索引壓縮比,可以大幅降低索引的儲存成本。

前提條件

您已完成以下操作:

  • 建立阿里雲ES執行個體(6.7.0版本),詳情請參見建立Elasticsearch執行個體

    重要

    codec-compression外掛程式目前只支援阿里雲ES 6.7.0版本,因此請建立6.7.0版本的執行個體。

  • 安裝codec-compression外掛程式(新購執行個體預設已安裝)。

    您可在外掛程式配置頁面查看是否已安裝codec-compression外掛程式,如果還未安裝,請手動進行安裝,安裝方法請參見安裝或卸載系統預設外掛程式

背景資訊

codec-compression外掛程式支援brotli和zstd壓縮演算法,適用於寫入量大、索引儲存成本高的情境,例如日誌情境、時序分析情境等,可以大大降低索引的儲存成本。效能測試資訊如下:

  • 測試環境

    • 機器配置:資料節點16核64 GB*3 + 2 TB SSD雲端硬碟。

    • 資料集:官方esrally內建的nyc_taxis(74 GB)。

    • 索引配置:都使用預設配置,寫入完成後都可以進行force merge

  • 測試結果

    壓縮演算法

    索引大小(GB)

    寫入TPS(doc/s)

    ES預設壓縮演算法(LZ4)

    35.5

    202682

    best_compression(DEFLATE)

    26.4

    181686

    brotli

    24.4

    182593

    zstd

    24.6

    181393

  • 結論

    codec-compression外掛程式使用的brotli和zstd壓縮演算法,與預設壓縮演算法(LZ4)相比,寫入效能下降了10%,壓縮率提升了45%,查詢效能不變;與原生best_compression(DEFLATE)相比,寫入效能不變,壓縮率提升了8%,查詢效能不變。

操作步驟

  1. 登入Kibana控制台。

    登入控制台的具體步驟請參見登入Kibana控制台

  2. 在左側導覽列,單擊Dev Tools(開發工具)。

  3. Console中,分別執行如下命令,為索引指定不同的壓縮演算法。

    • brotli壓縮演算法

      PUT index-1
      {
          "settings": {
              "index": {
                  "codec": "brotli"
              }
          }
      }
    • zstd壓縮演算法

      PUT index-1
      {
          "settings": {
              "index": {
                  "codec": "zstd"
              }
          }
      }