使用elasticsearch進行深度分頁查詢時的size-from大於10000的時候,會提示一個max_result_window is too large的錯誤。
官方推薦是scroll查詢返回結果是無序的不滿足業務需求,所以還是通過設置最大返回結果數來達到我們的目的
然后我們可以通過以下方法設置:node settings must not contain any index level settings
第一種:
curl -H "Content-Type: application/json" -XPUT 'http://127.0.0.1:9200/_all/_settings?preserve_existing=true' -d '{ "index.max_result_window" : "1000000000" }'
或者
curl -H "Content-Type: application/json" -XPUT http://127.0.0.1:9200/_settings -d '{ "index" : { "max_result_window" : 100000000}}'
第二種:在config/elasticsearch.yml文件中的最后加上index.max_result_window: 100000000,但是這種方法要注意在最前面加上空格
但是要注意,5.x之后,已經不支持第二種方式了。否則啟動時,會報下列錯誤: