当前位置: 首页 > news >正文

论坛类的网站怎么做网架加工图

论坛类的网站怎么做,网架加工图,泰国做性的短视频网站,qq代刷网站社区建设解决too_many_clauses: maxClauseCount is set to 1024 报错问题 问题场景报错信息问题分析解决1. 优化查询2. 增加maxClauseCount3. 改用其他查询类型修改后的查询示例 问题场景 查询语句:查询clcNo分类号包含分类O的所有文档 {"match_phrase_prefix":…

解决too_many_clauses: maxClauseCount is set to 1024 报错问题

    • 问题场景
    • 报错信息
    • 问题分析解决
      • 1. 优化查询
      • 2. 增加maxClauseCount
      • 3. 改用其他查询类型
      • 修改后的查询示例

问题场景

查询语句:查询clcNo分类号包含分类O的所有文档

{"match_phrase_prefix": {"clcNo": {"query": "O","analyzer": "standard","slop": 0,"max_expansions": 10000,"boost": 10.0}}
}

报错信息

{"took": 12,"responses": [{"error": {"root_cause": [{"type": "exception","reason": "Elasticsearch exception [type=search_phase_execution_exception, reason=all shards failed]","phase": "query","suppressed": [{"type": "exception","reason": "Elasticsearch exception [type=too_many_clauses, reason=too_many_clauses: maxClauseCount is set to 1024]"}]}],"type": "exception","reason": "Elasticsearch exception [type=search_phase_execution_exception, reason=all shards failed]","phase": "query","suppressed": [{"type": "exception","reason": "Elasticsearch exception [type=too_many_clauses, reason=too_many_clauses: maxClauseCount is set to 1024]"}]},"status": 500}]
}

问题分析解决

从报错信息来看,查询出现了too_many_clauses错误,这是因为使用的match_phrase_prefix或者in以及其他的查询生成的子句数量超过了Elasticsearch的默认限制(1024个子句)。我这里的错误是由于使用match_phrase_prefix可能扩展为大量词条的查询中超过了限制

可以尝试通过以下几种方式来解决这个问题:

  1. 优化查询:减少查询中使用的子句数量
  2. 增加maxClauseCount:增加Elasticsearch中允许的最大子句数量
  3. 改用其他查询类型:使用性能更好的查询类型

1. 优化查询

尝试减少子句数量,优化子句的查询数量,使得能减少到1024的个数限制

2. 增加maxClauseCount

如果确实需要大量的子句,可以增加Elasticsearch中的maxClauseCount限制。可以通过以下步骤来增加:

  • 修改Elasticsearch7.x配置文件 (elasticsearch.yml):

    indices.query.bool.max_clause_count: 2048
    
  • 或者通过Elasticsearch的API动态更新设置(这个我没尝试,而且可能只是临时的):

    curl -X PUT "localhost:9200/_settings" -H 'Content-Type: application/json' -d '{"index" : {"query" : {"bool" : {"max_clause_count" : 2048}}}
    }'
    

3. 改用其他查询类型

如果前两种方法不可行,考虑使用性能更好的查询类型,比如prefix查询。虽然prefix查询不如match_phrase_prefix查询精确,但它性能更好,并且不会产生过多的子句。

修改后的查询示例

这里是一个优化后的查询示例,将match_phrase_prefix替换为prefix查询,并减少inner_hits的数量:

  {"prefix": {"clcNo": {"value": "O","boost": 10.0}}}

以上修改包括:

  1. 使用prefix查询替代match_phrase_prefix查询。
  2. 降低inner_hits的数量,以减少子句数量。
http://www.yayakq.cn/news/709831/

相关文章:

  • 江西省宜春市建设局网站商丘网络电视台直播
  • 动漫做h免费网站有哪些非凡软件站
  • 深圳布吉网站建设wordpress接口
  • 手机商城网站源码电子元件做的比较好的网站
  • 口碑好的扬中网站建设枣庄科技馆里度周末
  • 厦门建设厅网站如何建设一个完整的网站
  • 做的比较好的返利网站知乎合肥网站建设索q479185700
  • 使用vue做简单网站教程公司网页制作免费
  • 商务网站如何推广网站开发好后版权归谁
  • 免费搭建微信网站设计网站链接怎么做跳转
  • 网站手机客户端开发百度网站优化外包
  • 布拖网站建设广州市网站制作
  • 仙桃网站制作网站设计九江建网站的公司
  • 团队建设游戏网站沈阳建网站平台
  • 建设厅特种作业证件查询官网自己怎么给网站做优化
  • 黄冈论坛网站有哪些网站架构图怎么做
  • 公司做自己的网站平台台微信防红短链接生成
  • 文化礼堂建设情况网站网站策划案需要包括哪些
  • wordpress企业建站教程网站怎么建
  • 能源科技网站建设营销型企业网站建设哪家好
  • 外贸建站福州app制作公司
  • 做网站需要注意哪些网站建站报价表
  • 内蒙古高等级公路建设开发有限责任公司网站微信平台公众号
  • 免费企业网站建站北京今天的最新发布消息
  • 十大免费跨境网站韩国还有出线的可能
  • 西京一师一优课建设网站asp 英文企业网站 免费
  • dwcc2017怎么做网站百度推广竞价是什么意思
  • 天津微网站建设装饰设计效果图
  • 张家界建设网站免费网站推荐软件
  • 表情制作器网站优化预算