ES入门十五:分页的三驾马车【from+size、search after、scroll api】
在Elasticsearch中,分页可以通过多种方式实现,下面是三种常用的分页方法:
from
和size
参数:使用from
指定跳过的文档数,size
指定返回的文档数量。
GET /_search
{
"from": 0,
"size": 10,
"query": {
"match_all": {}
}
}
search_after
参数:使用上一页的最后几个文档的排序值来请求下一页的文档。
GET /_search
{
"size": 10,
"query": {
"match_all": {}
},
"search_after": [ "previous_page_last_sort_values" ]
}
scroll
API:适用于大数据集的初始滚动查询,后续可以使用滚动ID来获取更多数据,适合数据量大且需要逐步加载的场景。
POST /_search?scroll=5m
{
"size": 100,
"query": {
"match_all": {}
}
}
以上代码分别展示了使用from
和size
、search_after
的基本用法和使用scroll
API进行数据的逐步加载。在实际应用中,应根据具体场景选择最合适的分页方法。
评论已关闭