codec-compression は、Alibaba Cloud Elasticsearch によって開発されたインデックス圧縮プラグインです。Brotli および zstd 圧縮アルゴリズムをサポートし、インデックスの高い圧縮率を提供します。このプラグインは、インデックスのストレージコストを大幅に削減します。
前提条件
Alibaba Cloud Elasticsearch V6.7.0 クラスタが作成されている。詳細については、「Alibaba Cloud Elasticsearch クラスタを作成する」をご参照ください。
重要codec-compression プラグインは、Alibaba Cloud Elasticsearch V6.7.0 でのみ使用できます。
codec-compression プラグインがインストールされている。新しいクラスタには自動的にインストールされます。
[プラグイン] ページで、codec-compression プラグインがインストールされているかどうかを確認できます。プラグインがインストールされていない場合は、手動でインストールする必要があります。詳細については、「組み込みプラグインをインストールおよび削除する」をご参照ください。
背景情報
codec-compression プラグインは、Brotli および zstd 圧縮アルゴリズムをサポートしています。ログ記録や時系列データ分析など、大量のデータを書き込む必要がある場合や、インデックスのストレージコストが高い場合に適しています。次の説明は、プラグインで実行されたパフォーマンステストに関する情報を提供します。
テスト環境
クラスタ構成:3 データノード。各ノードは 16 vCPU、64 GiB のメモリ、および 1 つの 2 TiB 標準 SSD を提供します。
データセット:オープンソース Elasticsearch によって提供される Rally の 74 GiB nyc_taixs
インデックス設定:デフォルト設定(force merge API を呼び出して、データの書き込み後に操作を実行できます。)
テスト結果
圧縮アルゴリズム
インデックスサイズ(GiB)
TPS(ドキュメント/秒)
LZ4(Elasticsearch のデフォルトの圧縮アルゴリズム)
35.5
202682
best_compression(DEFLATE)
26.4
181686
Brotli
24.4
182593
zstd
24.6
181393
テストの結論
codec-compression プラグインが Brotli または zstd を使用する場合、LZ4 を使用する場合と比較して、45% 高い圧縮率を実現し、同じクエリパフォーマンスを維持しますが、書き込みパフォーマンスが 10% 低下します。ただし、best_compression(DEFLATE)を使用する場合と比較して、8% 高い圧縮率を実現し、同じ書き込みパフォーマンスとクエリパフォーマンスを維持します。
手順
Elasticsearch クラスタの Kibana コンソールにログインします。
詳細については、「Kibana コンソールにログインする」をご参照ください。
左側のナビゲーションペインで、[dev Tools] をクリックします。
表示されたページの [コンソール] タブで、次のコマンドを実行して、インデックスに異なる圧縮アルゴリズムを指定します。
Brotli 圧縮アルゴリズム
PUT index-1 { "settings": { "index": { "codec": "brotli" } } }zstd 圧縮アルゴリズム
PUT index-1 { "settings": { "index": { "codec": "zstd" } } }