ES设置最大查询条数限制,打破限制,聚合分组数量限制打破

这篇具有很好参考价值的文章主要介绍了ES设置最大查询条数限制,打破限制,聚合分组数量限制打破。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

ES设置最大查询条数限制,打破限制,聚合分组数量限制打破

一、前言

​ 今天在做ElasticSearch进行查询的时候发现,在进行分页的时候,数据超出10000以后得页数,查询的时候会报错。后查询了es官方文档发现,查询数量的默认值是10000

官网链接:https://www.elastic.co/guide/en/elasticsearch/reference/7.8/index-modules.html#dynamic-index-settings

index.max_result_window
The maximum value of from + size for searches to this index. Defaults to 10000.
Search requests take heap memory and time proportional to from + size and this limits that memory. 
See Scroll or Search After for a more efficient alternative to raising this.

报错内容:

max_result_window is too large

二、如何修改最大值限制

  1. Kibana中进行修改,将index_name替换成自己的索引名
// 请求
PUT index_name/_settings
{
    "index" : {
        "max_result_window" : 200000
    }
}
// 响应
{ "acknowledged": true }
  1. 通过API修改
curl -H "Content-Type: application/json" -XPUT 127.0.0.1:9200/index_name/_settings -d '{"index.max_result_window":"200000"}'

三、查看修改后的配置

// 请求
GET index_name/_settings
// 响应
{
  "index_name" : {
    "settings" : {
      "index" : {
      	......
        "max_result_window" : "200000", // 修改后的最大限制数量
        ......
      }
    }
  }
}

四、附言,聚合分组最大数量限制如何修改

  1. 由于es最大限制数量为10000,所以在进行聚合分组(Aggregations )的时候,也会有限制影响,但是需要单独修改
// 请求
PUT /_cluster/settings
{
  "persistent": {
    "search.max_buckets": 300000
  }
}
// 响应
{
  "acknowledged" : true,
  "persistent" : {
    "search" : {
      "max_buckets" : "300000"
    }
  },
  "transient" : { }
}
  1. 修改配置之后,在进行聚合分组设置size值的时候,就可以突破上限了。
  2. 注意:但是只能在当前设置的范围内

后续会持续更新在工作当中遇到的问题!!!

大家一起学习!!!文章来源地址https://www.toymoban.com/news/detail-776314.html

到了这里,关于ES设置最大查询条数限制,打破限制,聚合分组数量限制打破的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包