elasticsearch存储数据压缩

一.前言

elk是流行的日志监控分析平台,但es占用存储空间过大,下面介绍几种压缩方案。

二.方案

1.禁用不需要的特性

不需要分词的字段,禁用text类型,使用keyword.(我们所有字段都是keyword)

2.使用更高效率的压缩算法

es默认压缩算法是LZ4,在es7.10之后提供了一种压缩比更高的算法DEFLATE,LZ4和DEFLATE算法比较:

算法 压缩比 压缩速度 解压速度 压缩内存占用 解压内存占用
DEFLATE 高 慢 慢 少 少
LZ4 低 快 快 多 多
3.定期force_merge

为不再更新的只读索引执行force merge,将Lucene索引合并为单个分段,可以提升查询速度。当一个Lucene索引存在多个分段时,每个分段会单独执行搜索再将结果合并;另外执行force_merge后也会释放无法被GC的segmentCache(另一种是close掉索引)。所以将只读索引强制合并为一个Lucene分段不仅可以优化搜索过程,减少内存占用,对索引恢复速度也有好处。

例如,每天生成一个新的索引,然后用别名关联,或者使用索引通配符。这样,可以每天凌晨对昨天的索引执行force-merge。

三.总结

压缩算法将LZ4改为Deflate,空间占用量可以下降10%。Elasticsearch统计的索引大小是整个索引所占空间空间的大小,整个索引包括很多文件,比如tim词典,tip词典索引,pos位置信息,fdt存储字段信息(_source实际存储的文件),等等。Elasticsearch中"codec": "best_compression" (也就是DEFLATE和LZ4压缩算法),是对fdt这个文件进行压缩。

相关推荐
遇码16 分钟前
流式调用中途断连别直接报错:瞬态故障识别、退避重试与中文根因诊断的搭建方法
大数据·人工智能·ai·rust·数据分析·大模型·agent
JXJD200437 分钟前
224G PAM4 高速线束:阻抗匹配设计与损耗控制的核心逻辑
大数据·ai
.冰块.43 分钟前
ELK 日志分析系统实验:部署 Elasticsearch 双节点集群实现 Apache 日志采集与 Kibana 可视化
elk·elasticsearch·apache·日志
康实训1 小时前
老年评估仿真实训平台架构设计与老年人能力评估实训室教学落地实践
大数据·人工智能·算法·实训室·实训室建设
ha_lydms1 小时前
Datetime Functions(日期时间函数)
大数据·hadoop·阿里云·spark·数据处理·dataworks·maxcompute
lisw051 小时前
制造业信息化:现代工业的发展趋势!
大数据·网络·人工智能
AllData公司负责人1 小时前
AllData搭建大模型资产中台集成开源项目BISHENG/Crater/Coze-Studio/Coze-Loop/DataFIow,建设AI大模型开发底座
大数据·人工智能·开源·bisheng·coze-studio·crater·datafiow
cc5725026531 小时前
2027校招岗位拆解:数学与应用数学转量化运营,SQL、Python与量化研究要求有何不同?
大数据
cspttty1 小时前
2027用户研究求职准备:应用统计学如何补齐研究设计与业务表达
大数据·数据库
麦豆GEO2 小时前
GEO与传统内容营销的核心差异:AI时代内容运营的全面升级
大数据·人工智能·内容运营