elasticsearch断路器和限制字段数据缓存

发布于 2022-09-11 15:22:13 字数 985 浏览 15 评论 0

问题描述

线上集群elasticsearch,宿主机内存有28G,分给es集群是14G,使用kibana作为一些基本的图形展示,有用到一些聚合、排序分析。当在kibana中选择的时间范围较大,往往导致es服务直接OOM,然后挂了。为了测试一些参数配置,本机上搭建了一个单实例elasticsearch服务,设置的可用内存设置是-Xms500m-Xmx500m。尝试按照官网限制内存使用提供的方法,做了一些设置,增加了这个配置

indices.fielddata.cache.size:  20% 

因为indices.breaker.fielddata.limit是默认的60%,就没有额外设置。同样的,模拟大时间范围的聚合分析图形展示,OOM然后就挂了。

目前希望可以达到这种效果:1.大的时间范围或者可能耗尽内存的行为,可以禁止掉,最好是es服务端不返回结果,也不能挂;2.es集群可以稳定,不能总是挂。

另外:
(1)看过一些博客:Elasticsearch 内存那点事是增大内存,但是这个方案无法彻底解决问题。
(2)在聚合操作时候,尽量优化,分桶聚合操作,尽量数据切片,划分多个时间段,这个可以的,但是会增加查看的麻烦。
(3)https://www.elastic.co/guide/...,这里有一些性能建议,我要的是稳定性,对于性能上没有要求。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文