es(elasticsearch)查询数据出现异常Result window is too large, from + size must be less than or equal to

当尝试从Elasticsearch获取超过10000条数据时,会遇到Resultwindowistoolarge的异常。解决方法包括修改配置文件,增加`max_result_window`的值,或者直接通过API动态设置索引的最大结果窗口,如PUT请求设置`myindex/_settings`。这允许查询更多数据以满足大数据集的需求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天使用es查询数据时出现异常:

Result window is too large, from + size must be less than or equal to: [10000] but was [10010]. See the scroll api for a more efficient way to request large data sets. This limit can be set by changing the [index.max_result_window] index level setting

也可能出现这个异常:all shards failed [type=search_phase_execution_exception]

通过查询得知:Elasticsearch 默认查询结果最多展示前 10000 条数据。

解决方法1:

修改Elasticsearch 集群中的 配置文件 config/elasticsearch.yml
在配置文件最后增加一行,如下:
max_result_window: 200000000

解决方法2:

具体操作命令,如下(比如,设置可查询 5000000 条数据,其中 myindex 是index名称):
PUT myindex/_settings

  "max_result_window" : 5000000

也可以直接在Linux执行命令 :

curl -XPUT "http://localhost:9200/myindex/_settings" -H 'Content-Type: application/json' -d '
{
    "index" : {
        "max_result_window" : 200000000
    }
}'

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

余额很不足

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值