Docs 菜单

Docs 主页开发应用程序MongoDB Manual

时间序列压缩

在此页面上

  • 默认压缩算法
  • 列压缩
  • 了解详情

本页介绍 MongoDB 如何压缩时间序列集合中的数据,以及如何优化压缩。

时间序列集合使用zstd压缩,与全局默认压缩算法 snappy 不同

从 MongoDB 5.2 开始,时间序列集合采用列压缩技术。列压缩引入了多项创新,这些创新点协同运作,显著改进了实际压缩效率、减少了数据在磁盘上的整体存储量,并提升了读取性能。

这些增强功能进一步减小了使用 zstd压缩时磁盘上数据的大小,并且还显着减少了 WiredTiger 缓存使用的空间。

引入的压缩类型包括:

  • 增量编码

  • 对象压缩

  • 数组压缩(从 MongoDB 6.0 开始)

  • 游程编码 (RLE)

Delta 编码利用时间序列集合中具有时间序列特征的数据。 Delta 编码不存储绝对值,而是假设测量值之间不会快速变化。这种方法仅存储测量之间的差值,从而减少了所需的信息量。

对于单调增加的数据,“增量之增量”编码可以通过计算增量的增量本身来进一步最小化存储数字的大小。

列压缩可确保,如果您在文档中使用对象和数组,您将获得与文档根级别存在这些嵌入式字段相同的压缩优势。

要了解如何优化压缩,请参阅优化压缩。

← 时间序列集合参考