You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Elasticsearch聚合结果如何分页?尝试partition与num_partitions未成功

Elasticsearch聚合结果分页方案

你当前的配置问题出在partition和num_partitions参数的位置错误,这两个参数应该直接放在terms聚合的层级下,而非嵌套在include内部。

修正后的配置示例

'session': {
  'terms': {
    'field': 'data.session.keyword', 
    'size': 100, 
    'partition': 1,
    'num_partitions': 10,
    'order': sortQuery
  }
}

核心参数说明

  • num_partitions:将聚合结果划分为指定数量的分片,比如设为10就会把全量结果拆成10份
  • partition:指定要获取的分片序号,从0开始计数(你之前设的1对应第2个分片,若要从第一页开始需设为0)
  • size:每个分片返回的结果条数,每次请求实际拿到的结果数等于该值

额外注意点

  • 这种哈希分片式分页能保证各分片结果无重复,但无法实现全局严格有序的分页(每个分片是独立排序的)
  • 如果需要全局有序的分页,可结合search_after参数:先获取前一页最后一个聚合项的排序字段值,将其作为下一页的search_after条件,配合size参数实现连续分页

内容的提问来源于stack exchange,提问作者David Sachakov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 18:40:33