Amazon Serverless 中的 zStandard 编解码器支持 OpenSearch - 亚马逊 OpenSearch 服务

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Amazon Serverless 中的 zStandard 编解码器支持 OpenSearch

索引编解码器决定如何压缩索引的存储字段并将其存储在磁盘和 S3 中。索引编解码器由指定压缩算法的静态index.codec设置控制。此设置会影响索引分片大小和索引操作性能。

默认情况下, OpenSearch Serverless 中的索引使用带有 LZ4 压缩算法的默认编解码器。 OpenSearch Serverles zstd_no_dict s 还支持zstd可配置压缩级别为 1 到 6 的编解码器。

重要

由于index.codec是静态设置,因此在创建索引后无法对其进行更改。

有关更多详细信息,请参阅OpenSearch 索引编解码器文档。

使用 ZSTD 编解码器创建索引

在创建索引期间,您可以使用以下设置指定 ZSTD 编解码器:index.codec

PUT /your_index { "settings": { "index.codec": "zstd" } }

压缩级别

ZSTD 编解码器通过index.codec.compression_level设置支持可选的压缩级别,接受 [1, 6] 范围内的整数。压缩级别越高,压缩比越好(存储空间越小),但压缩和解压缩速度越慢。默认压缩级别为 3。

PUT /your_index { "settings": { "index.codec": "zstd", "index.codec.compression_level": 2 } }

绩效基准测试

根据对 nyc_taxi 数据集的基准测试,在、和压缩级别的不同组合下,与基线相比,ZSTD 压缩的压缩率提高了 26-32%。zstd zstd_no_dict

指标 ZSTD L1 ZSTD L6 ZSTD_NO_DICT L1 ZSTD_NO_DICT L6
缩小索引大小 28.10% 32% 26.90% 28.70%
索引吞吐量变化 -0.50% -23.80% -0.50% -5.30%
match-all Query p90 延迟改进 -16.40% 29.50% -16.40% 23.40%
范围查询 p90 延迟改进 90.90% 92.40% -282.90% 92.50%
距离量 p90 Agg 延迟改进 2% 24.70% 2% 13.80%

有关更多详细信息,请参阅AWS OpenSearch 博客