elasticsearch 分页问题

      elasticsearch分页分为两种:浅分页和深分页

        首先来看下浅分页 实现方式就是from和size控制

        假如查询的索引有5个分片,from=0 size=10,此时es会将查询节点请求分配到其余分片所在节点。

其余节点会返回自己数据结果集中的top10,然后返回给请求节点。请求节点接受到的数据集就有5*10个

大小,然后再从中选取top10个返回。

        如果我们查询条件是from=100,size=10,那么每个分片节点都要返回查询结果集的top1010,最终请求

节点会收到5050个数据,然后在筛选出top10个,丢弃其余的数据。由此可以,随着分页的深度,查询的性能

会越来越低。

        如果是大量数据的查询请求,建议用深度分页,即scroll,每次会记录查询游标,性能会好很多。具体实现

大家可以在es官方文档查看。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值