1.from-size的限制
Elasticsearch可以用一种分页的形式来查询数据from-size
https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-from-size.html。
- from:定义从哪里开始拿数据。
- size:结果集返回的文档数。
from-size的工作原理是:如size=10&from=90,那么Elasticsearch会从每个Shard里取出100条数据,然后再排序,取出90~100序号的文档。由此观之,from-size的效率必然不会很高,特别是分页越深,需要排序的数据越多,其效率就越低。
另外,ElasticSearch对于from-size的默认分页深度的10000,如果超过10000就会报错。
当单个结果集超过10000时,可以使用_setting API动态调整索引设置max_result_window的大小,使from + size <= max_result_window
https://www.elastic.co/guide/en/elasticsearch/reference/2.4/index-modu