ES各种分页方式及其优缺点对比
Elasticsearch (ES) 提供了几种不同的分页方法来帮助用户有效地从大量数据中检索部分结果。以下是几种常见的分页方式及其优缺点对比:
1. From/Size 分页(浅分页)
说明: 这是最直接也是ES默认的分页方式,通过from和size参数实现。from指定起始文档的位置,size指定每次返回的结果数量。
优点:
- 使用简便,符合SQL查询习惯。
- 支持非连续分页,可以直接跳转到任意页码。
- 数据实时更新,每次请求都反映最新数据状态。
缺点:
- 深度分页性能差,因为
from值越大,ES需要遍历和丢弃的文档越多,特别是当from值接近或超过index.max_result_window配置时(默认10000)。 - 占用内存,尤其是在处理大量数据集时,可能导致内存溢出。
2. Scroll 分页
说明: 适用于大量数据的深度分页,通过一次初始化请求(打开一个Scroll上下文)来保持对搜索结果集的引用,然后通过多次滚动请求(使用Scroll ID)来获取结果集的不同片段。
优点:
- 对深度分页友好,性能稳定,不会随着分页深度增加而显著下降。
- 可以处理大量数据而不受
index.max_result_window限制。
缺点:
ES分页技巧

最低0.47元/天 解锁文章
2996

被折叠的 条评论
为什么被折叠?



