Easy-es框架,解决max_analyzed_offset问题

Hypermesh二次开发实战:从Tcl/Tk脚本到Ext API的进阶之路 本文系统介绍了Hypermesh二次开发的进阶路径,从自动化重复操作的Tcl/Tk脚本入门,到利用HMASCII接口深度读写模型数据,最终深入Ext API进行高性能计算与功能定制。通过实战案例,帮助工程师掌握从脚本录制到C++插件开发的完整技能,显著提升CAE前处理效率与自动化水平。 阅读详情

贴出原问题:

Caused by: org.dromara.easyes.common.exception.EasyEsException: search response failed ,failedShards: shard [[y5IlSlqJRd2hrlIN54BIFQ][article][2]], reason [ElasticsearchException[Elasticsearch exception [type=illegal_argument_exception, reason=The length [4710912] of field [content] in doc[3173515]/index[article] exceeds the [index.highlight.max_analyzed_offset] limit [1000000]. To avoid this error, set the query parameter [max_analyzed_offset] to a value less than index setting [1000000] and this will tolerate long field values by truncating them.]]], cause [ElasticsearchException[Elasticsearch exception [type=illegal_argument_exception, reason=The length [4710912] of field [content] in doc[3173515]/index[article] exceeds the [index.highlight.max_analyzed_offset] limit [1000000]. To avoid this error, set the query parameter [max_analyzed_offset] to a value less than index setting [1000000] and this will tolerate long field values by truncating them.]]

分析:

此问题是因为,es索引默认的单字段最大的可以进行高亮截取的长度为     index.highlight.max_analyzed_offset=1000000,但是字段存储的数据长度为4710912,长度超了很多,所以报错。

解决方案:

有两种解决方案

1、修改索引,put请求,设置 highlight.max_analyzed_offset=5000000,设置长一些,但是此方案会造成es内存消耗和开支更大,或许会影响查询,所以不建议,我也没有尝试。

2、代码中在请求查找的时候,添加参数   maxAnalyzedOffset(9999999)。

此方案可行,已测试。

具体做法如下,此处以和easy-es框架适配为例子。

//先正常封装查询,使用easy-es框架封装查询各类条件
LambdaEsQueryWrapper<ArticleSelect> leqw = queryWhere(dto);
//使用原生的高亮构造器   设置高亮条件maxAnalyzedOffset  及其他条件
HighlightBuilder highlightBuilder = new HighlightBuilder()
        .fragmentSize(200)                   // 每个片段最多200字符
        .numOfFragments(1)                   // 只返回1个片段
        .maxAnalyzedOffset(999999)            // 限制分析的最大字符数
        .preTags("<font color='red'>")       // 自定义高亮开始标签
        .postTags("</font>")                 // 自定义高亮结束标签
        .field("title")                      // 对 title 字段高亮
        .field("content");                   // 对 content 字段高亮
//注意,此处的SearchSourceBuilder不是new出来的,是selectMapper也就是easy-es的mapper  get出来的
SearchSourceBuilder searchSourceBuilder = selectMapper.getSearchSourceBuilder(leqw);
//高亮构造器设置进入SearchSourceBuilder 
searchSourceBuilder.highlighter(highlightBuilder);
//easy-es的框架混合插入SearchSourceBuilder 
leqw.setSearchSourceBuilder(searchSourceBuilder);
//正常查询即可避免刚刚出现的错误  下面的查询是深分页查询,其他查询如queryList,pageQuery也是可以的,而且这个高亮设置和实体类字段上面的高亮注解@HighLight并不冲突,这个设置的优先级要高于注解。
SAPageInfo<ArticleSelect> data = selectMapper.searchAfterPage(leqw, dto.getNextSearchAfter(), dto.getPgSize());

手把手教你学Simulink——基于传统电网建模与稳定性分析的场景实例:基于同步发电机的单机无穷大系统建模与稳定性分析 本文详细介绍了使用MATLAB/Simulink进行单机无穷大系统(SMIB)建模与稳定性分析的方法。教程从系统结构设计入手,包含同步发电机、输电线路、无穷大母线等核心模块的建模步骤和参数配置示例。重点讲解了七个关键步骤:项目创建、模块配置、控制系统集成、负载添加(可选)以及仿真运行与结果分析,并提供了具体的MATLAB代码示例。最后通过性能评估指标(功角差、电压跌落、频率偏差)分析系统稳定性,为电力系统动态特性研究提供了实用指导,强调准确参数设置对仿真结果的重要性。 阅读详情

相关推荐

泛微E8流程监控指南:如何用SQL实时追踪审批节点状态?

本文详细介绍了如何利用SQL实时监控泛微E8系统中的审批流程状态,包括核心数据表结构解析、全链路监控SQL实战以及智能预警机制设计。通过数据库直接查询和状态关联分析,帮助企业快速定位卡顿节点,提升流程效率。适用于需要优化OA系统流程管理的企业IT人员和业务主管。

weixin_30687051的博客 437

index.highlight.max_analyzed_offset

elasticsearch问题集锦 index.highlight.max_analyzed_offset 为高亮显示请求分析的最大字符偏移量。 解决 可以尝试修改index.highlight.max_analyzed_offset,增大设置,但是不建议修改很大,会导致es内存问题,默认上限为1000000 curl -XPUT "127.0.0.1:9200/mason*/_settings" -H 'Content-Type: application/json' -d '{ "index"

qq_37828006的博客 6474

win11怎么安装dosbox和masm来运行汇编程序(小白,萌新篇)

一文教会你如何部署dosbox和masm环境

m0_73279193的博客 4699

elasticsearch中index.highlight.max_analyzed_offset设置

max_analyzed_offset 用于高亮请求的可分析最大字符数量,仅对无`offsets`和`term vectors`的文本高亮请求有效。默认值`1000000`

weixin_60382322的博客 4345

ATE测试的未来:自动化与智能化的技术演进

本文探讨了自动测试设备(ATE)在半导体产业中的技术演进,重点关注自动化与智能化的发展趋势。随着芯片制程的不断进步,ATE面临测试复杂度激增和成本压力等挑战。文章分析了AI技术在测试优化中的应用,如自适应测试和缺陷预测,以及模块化架构和端到端测试生态系统的创新。这些技术突破显著提升了测试效率和设备利用率,为半导体测试的未来发展指明了方向。

weixin_29232507的博客 614

保姆级教程:从AD导出Gerber到HFSS 3D Layout导入,搞定PCB电磁仿真全流程

本文提供从Altium Designer导出Gerber文件到Ansys HFSS 3D Layout导入的完整PCB电磁仿真流程指南。详细讲解Gerber文件导出设置、HFSS中的3D模型重建技巧,以及电磁仿真中的常见问题解决方案,帮助工程师高效完成高速电路和射频设计的性能验证。

weixin_30379531的博客 707

index.highlight.max_analyzed_offset 偏移量设置

ndex.highlight.max_analyzed_offset这个参数只能通过命令行下设置,不能再kibana图形界面下设置。 之前做elk索引查询的时候报错: The length of [message] field of [blTnlXwBIN8mDOvDIrfq] doc of [epta-dispatch-2021.10.19] index has exceeded [1000000] - maximum allowed to be analyzed for highlighting..

lw_jack的博客 1870

总结-NuerIPS2023-Direct Preference Optimization:Your Language Model is Secretly a Reward Model

对比PPO,DPO的泛化能力更强。

m0_60361484的博客 1606

elasticsearch报错:exceeds the [index.highlight.max_analyzed_offset] limit [1000000]

意思是说es从5.*开始,不能在elasticsearch .yaml里面设置index.highlight.max_analyzed_offset了,需要通过配置文件或者http的PUT命令设置进去index.highlight.max_analyzed_offset。注意,不是get或者post,而是PUT。es启动起来后,在执行http的put。

Zhang Phil 3034

激光除草技术原理与应用全解析

激光除草技术通过光热、光化学等效应精准破坏杂草组织,核心参数包括功率(20-6000W)、波长(400nm-10.6μm)和脉冲宽度。主要应用于大田作物(如玉米、棉花)、经济作物(烟草、果树)及城市绿化,具有环保(无化学污染)、高效(识别率≥95%)和非接触等优势,但存在设备成本高(20-50万元)、技术门槛高等局限。当前技术融合AI识别、多光谱协同等创新,国产设备如华工智耘已实现95.3%识别精度。虽短期投入较高,但长期可降低30%除草成本,并带来环境效益(每亩减排1.2吨CO₂)

start_up_go的博客 556

【系统分析师】2025年下半年真题:综合知识-答案及详解(回忆版)

本文摘要包含系统分析师考试相关题目解析,主要涵盖软件工程、数据库、网络协议和项目管理等知识点。内容包括:软件再工程与逆向工程的区别(D);GNU GPL开源协议特性(A);TCP/IP协议分层(A、B);数据库范式判定(A、B);前导图进度管理工具(C);系统规划中的数据类识别方法(B、D);关系代数除运算(C);CMM优化级特征(A);回归测试重要性(C)。这些解析帮助理解核心概念和考试重点。

数据知道的博客 6716

index.highlight.max_analyzed_offset 偏移量设置

这个参数只能通过命令行下设置,不能再kibana图形界面下设置。 之前做elk查询的时候报错: Caused by: java.lang.IllegalArgumentException: The length of [message] field of [VqCNQHkBFO-4K4CU-7tq] doc of [xxxx-node02-xxxx-2021.05.06] index has exceeded [1000000] - maximum allowed to be analyzed for

weixin_48114253的博客 3448

AWR1843+DCA1000通过mmwave studio采集数据遇到的问题及解决方法

确保DCA1000的拨钮拨在了RADAR_5V_IN一边,这代表DCA1000通过与其相连的雷达板子供电,如果拨到了DC_JACK5V_IN一边,表示DCA1000用单独的电源供电。

qq_50974341的博客 4164

运用easy-es保存数据时,报错:cn.easyes.common.exception.EasyEsException: no such method:

导致以上可能是因为封装的实体没有配置主键id导致的;

qq_39086936的博客 2633

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

kibana展示的索引报错 index has exceeded [1000000] - maximum allowed to be analyzed for highlighting.

通过更改“index.highlight.max_analyzed_offset”的允许高亮分析文本的最大长度设置来避免类似于“message”字段长度超过默认最大值的问题。查看索引配置的参数service* curl -XGET "http://127.0.0.1:9200/service*/_settings?可以看到配置已经添加生效执行过这条命令之后可以返回kibana查看索引恢复正常。举例service* 将匹配所有service开头的索引在es节点执行。可以看到配置的参数为空了。

W1124824402的博客 1470

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

ElasticSearch查询报错index has exceeded [1000000] - maximum allowed to be analyzed for highlighting 解决方案

项目中通过ElasticSearch实现全文检索功能,查询含有指定关键字的文档并将关键字高亮显示,搜索过程中出现报错index has exceeded [1000000] - maximum allowed to be analyzed for highlighting.官方文档中有明确解释,index.highlight.max_analyzed_offset配置的是分析高亮请求的最大字符数。默认值为1000000。

secretdaixin的博客 1263

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

spring-data-elasticsearch suggest实现错词纠正和自动补全

背景: 项目中使用了spring-data-elasticsearch注解式mapping的配置了对象实现了搜索功能。 接到需求需要实现错词纠正功能和自动补全功能: 在网上找的资料,可以通过ES的suggest功能实现,但大部分是直接使用elasticsearch client的方式实现的,于是对使用spring-data-elasticsearch实现的步骤做个总结,希望对有需要的同学有所帮助。 这边直接进行配置说明,不再介绍ES通过注解配置mapping和Suggest的基础知识点。 注意:这里只实现

qvc180的博客 3287

ElasticsearchSearchAPI

此文档基于版本6.3 Search API 除Explain API外,其他的所有Search API都支持多索引。 GET /kimchy,elasticsearch/_search?q=tag:wow routing参数 自动选择最佳分片curl -X PUT "localhost:9200/_cluster/settings" -H 'Content-Type: applicat...

Ω搬Θ砖O 485

关于kibana 查询出现 x分片有 x 个失败

关于kibana 查询出现 x分片有 x 个失败 打开控制台查看接口返回出现 The length of [msg] field of [pAuVMXYBWMKQqimE8lSp] doc of [filebeat-7.6.0-2020.12.05] index has exceeded [1000000] - maximum allowed to be analyzed for highlighting. This maximum can be set by changing the [index.hig

夜~狠冷 3616

ELK 日常问题

ES磁盘情况:可以通过自带的监控查看磁盘占用情况,以及jvm情况 # 获取所有索引:es机器上,如果是集群,任一es上即可 curl -XGET 'http://192.168.0.56:9200/_cat/indices/?v'|awk '{print $3}'|sort # 删除索引,如监控的索引,可根据情况,编写定期清理的脚本,比如保存一个月的日志等 curl -XDELETE 'ht...

一曲终了人未还的博客 1811

Elastic Stack学习之——Elasticsearch(二)

5. 索引模块

baidu_41566983的博客 925

使用ElasticSearch遇到的问题

在使用 ElasticSearch 的时候,如果索引中的字段是 text 类型,针对该字段聚合、排序和查询的时候常会出现 Fielddata is disabled on text fields by default. Set fielddata=true 的错误。本文总结这个错误出现的原因,可能的修复方法等。 这个问题的解决方法并没有尝试过 常见原因 在 ElasticSearch 中,Fielddata 默认在 text 类型的字段时是不启用的。设想,如果默认打开,那么你的数据中,每个字符串大概率不

梦想是很难很难的,所以先勇敢一点 5851

全文检索示例:ES用户和索引创建(6)

简介 本文主要介绍两方面知识 创建存放爬取文档的index 创建用于访问ES的用户 索引创建 第一个版本 创建一个名为es_doc_v1(第一个版本)的索引并为索引创建一个别名es_doc 索引字段信息 字段名 描述 类型 分词器 title 标题 text ik_max_word url url地址 keyword content 内容 text ik_max_wo...

huanqingdong的专栏 1442

Elasticsearch Search API之(Request Body Search 查询主体)

作者介绍:《RocketMQ技术内幕》作者,中间件兴趣圈微信公众号维护者,文末有对应的二维码,关注后可以与作者更好的互动。 本文有点长,看完可能需要点耐心,本文详细介绍了es三种分页方式、排序、from、size、source filter、dov values fields、post filter、高亮显示、rescoring、search type、scroll、preference、pref...

中间件兴趣圈 6612

ElasticSearch6更新与重大变化

截至 2018-06-10 Elasticsearch6.2.4 Elasticsearch更新 通常滚动更新,具体升级方案需要参考官网。 小版本更新,可以一次对集群中的单节点滚动更新(不支持在非升级期间在集群中使用多个版本,新版本分片的更新不会复制到运行中的老版本节点上) 主要版本更新需要重启整个集群 跨主要版本升级不被支持 需要检查是否用到了deprecated的特性 需要检查各种...

acbworld123456的博客 713

elasticsearch使用指南之Elasticsearch Index Setting一览表

索引的配置项按是否可以更改分为static属性与动态配置,所谓的静态配置即索引创建后不能修改。 1、索引静态配置 index.number_of_shards 索引分片的数量。在ES层面可以通过es.index.max_number_of_shards属性设置索引最大的分片数,默认为1024,index.number_of_shards的默认值为Math.min(es.index.max_num...

中间件兴趣圈 6063
上一篇: ElasticSearch专题篇
下一篇: Java总结
adminaddress
博客等级 码龄5年 59粉丝 11原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值