首页 > 系统相关 >23、Elasticsearch-fielddata内存使用陡增解决方案

23、Elasticsearch-fielddata内存使用陡增解决方案

时间:2024-12-16 23:53:16浏览次数:4  
标签:fielddata 23 查询 索引 Elasticsearch 内存 排序 id

利用searchAfter分页方式代替From-Size查询或Scroll滚动查询,解决From-Size查询存在的深度翻页问题与Scroll滚动查询存在数据量大响应慢的问题。由于searchAfter分页需要保证排序聚合唯一,当使用_id 字段进行排序聚合时,可能会导致fielddata内存使用指标陡增,从而导致集群的内存使用率上升,一旦内存使用率超过90%即会对集群的性能产生影响,进而抛出FielddataMemoryUsedBytes内存不足异常。
 

一、异常:

java.util.concurrent.ExecutionException: CircuitBreakingException[[fielddata] Data too large, data for [_id] would be [xxxx/x.xgb], which is larger than the limit of [xxxx/x.xgb]]

 

 

二、原因:

由于复杂的查询涉及到对 _id的某种内存密集型处理时,会将大量的 _id 相关数据加载到内存中的fielddata结构里,以便可以快速执行访问,但fielddata不是临时缓存,它是驻留在内存里的数据结构,垃圾回收是不会回收这部分缓存的,因此当数据量多的时候(多个索引),其大小突破会系统设定的阈值。

 

三、处理方案:

1、定位什么字段导致的fielddata突增:

# 显示每个节点字段所占的堆空间 并按照所占空间降序排列
GET _cat/fielddata?v&s=size:desc
# indices:查看集群中所有index的详细信息
GET _cat/indices?v&h=index,fielddata.memory_size&s=fielddata.memory_size:desc

2、修改排序聚合方案:

在达到报警水位线之前将“对text类型字段、_id 字段进行排序聚合”的业务进行修改或使用其它方案替代,保证集群的稳定性

3、清理指定索引fielddata缓存:

可能导致该索引的查询变慢,引起业务抖动,需提前和客户说明风险:

#单个: 
POST /索引名/_cache/clear?fielddata=true
#全量:
POST /_cache/clear?fielddata=true 

 

标签:fielddata,23,查询,索引,Elasticsearch,内存,排序,id
From: https://www.cnblogs.com/Iven-L/p/18611317

相关文章

  • 【数据分享】2008-2023年我国省市县三级的逐日NO2数据(免费获取\excel\shp格式)
    空气质量数据是在我们日常研究中经常使用的数据!之前我们给大家分享了2000-2023年的省市县三级的逐日PM2.5数据、2000-2023年的省市县三级的逐日PM10数据、2013-2023年的省市县三级的逐日SO2数据和2000-2023年省市县三级的逐日O3数据(可查看之前的文章获悉详情)!本次我们分享的是......
  • Docker安装Redis和Elasticsearch
    本章将和大家分享在Docker中如何安装Redis和Elasticsearch。废话不多说,下面我们直接进入主题。一、Docker安装Redis1、拉取最新版的redis镜像dockerpullredis2、查看本地镜像dockerimages3、从官网获取redis.conf配置文件创建并进入指定目录(可自定义)://进入......
  • 20222314 2024-2025-1 《网络与系统攻防技术》实验八实验报告
    202223142024-2025-1《网络与系统攻防技术》实验八实验报告1.实验内容1.1Web前端HTML能正常安装、启停Apache。理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的HTML1.2Web前端javascipt理解JavaScript的基本功能,理解DOM在1的基础上,编写JavaScript验证用户名、密......
  • Elasticsearch、Logstash和Kibana
    ELK概述定义与组成部分:ELK是Elasticsearch、Logstash和Kibana的缩写,这三个工具共同构成了一个强大的日志管理和分析平台。Elasticsearch:是一个分布式的、RESTful风格的搜索和数据分析引擎。它能够存储和索引大量的数据,并提供快速的搜索功能。其核心功能是对数据进行索引,使得......
  • 首尔之春(2023)【蓝光原盘 / REMUX】【内封简繁特效字幕】电影百度云/夸克迅雷UC网盘资
    ◎译名首尔之春/12.12:TheDay/12.12:首尔之春(台)◎片名서울의봄◎年代2023◎产地韩国◎类别剧情◎语言韩语◎上映日期2023-11-22(韩国)◎片长141分钟◎导演金成洙Sung-suKim◎编剧金成洙Sung-suKim◎......
  • ElasticSearch 常见故障解析与修复秘籍
    文章目录一、ElasticSearch启动服务提示无法使用root用户二、ElasticSearch启动提示进程可拥有的虚拟内存少三、ElasticSearch提示用户拥有的可创建文件描述符太少四、ElasticSearch集群yellow状态分析五、ElasticSearch节点磁盘使用率过高,read_only状态问题解决六、Elas......
  • docker启动ES增加elasticsearch-header访问,解决跨域问题
    在做一件什么事情:docker部署ES服务,希望增加可视化工具。于是选择了一种简单的方式,增加elasticsearch-header组件访问。这样只需要在浏览器上输入地址可以直接访问。遇到了什么问题:提示跨域访问问题分析:服务器端放开访问限制解决方案:增加跨域访问配置脚本如下:点击查看代......
  • 2024-2025-1 20241423 《计算机基础与程序设计》第十二周学习总结
    作业信息这个作业属于哪个课程2024-2025-1-计算机基础与程序设计(https://edu.cnblogs.com/campus/besti/2024-2025-1-CFAP)这个作业要求在哪里2024-2025-1计算机基础与程序设计第十二周作业(https://edu.cnblogs.com/campus/besti/2024-2025-1-CFAP/homework/13276)......
  • 【最新】北大数字普惠金融指数数据集-省市县(2011-2023年)
    一、数据介绍数据名称:第六期北大数字普惠金融指数-省市县数据年份:2011-2023年数据范围:全国31个省、337个地级以上城市以及2800个县数据说明:编制方法请参阅《经济学(季刊)》中的《测度中国数字普惠金融发展:指数编制与空间特征》时间跨度:省级和城市级指数时间跨度为2011-202......
  • springboot农产品销存一体化系统-计算机毕业设计源码57231
    摘要 近年来,电子商务的快速发展引起了行业和学术界的高度关注。农产品销存一体化系统的设计与实现旨在为用户提供一个简单、高效、便捷的农产品购物体验,它不仅要求用户清晰地查看所需信息,而且还要求界面设计精美,使得功能与页面完美融合,从而提升系统的可操作性。因此,我们......