elasticsearch内存不断增长问题

经过一段时间运行,es的索引已经达到数十G以上。es采用mmap的方式将索引文件映射到内存中,随着检索的次数增加,越来越多的数据被操作系统读入到内存中。这部分内存位于系统中,但是又不归es管理,也就是和jvm配置的堆内存大小无关。
结果就是导致es总的内存不断增长。
解决该问题的办法是修改es的存储方式,配置参数index.store.type由mmap改成niofs。niofs的性能也很好,对检索的性能影响并不大,并且能够有效的控制内存增长。可以认为这是一种按需读取数据的方式,读取的数据主要在系统的缓存中,这个内存是会被回收掉的,es的内存并不会疯涨。

vim config/elasticsearch.yml
index.store.type: niofs
node.store.allow_mmap: false
原文地址:https://www.cnblogs.com/sanduzxcvbnm/p/11983599.html