本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
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 博客