今天使用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
}
}'