首页 > 其他分享 >ElasticSearch聚合分页

ElasticSearch聚合分页

时间:2024-06-10 13:59:05浏览次数:21  
标签:hits 聚合 分页 结果 Top 查询 ElasticSearch

聚合分页

  ES支持同时返回查询结果和聚合结果,前面的博客在介绍聚合查询时,查询结果和聚合结果各自封装在不同的子句中。但有时我们希望聚合的结果按照每组选出前N个文档的方式进行呈现,最常见的一个场景就是电商搜索,如搜索苹果手机6S,搜索结果应该展示手机6S型号中的一款手机即可,而不论该型号手机的颜色有多少种。另外,当聚合结果和查询结果封装在一起时,还需要考虑对结果分页的问题,此时之前的博客介绍的聚合查询就不能解决这些问题了。

  ES提供的Top hits聚合和Collapse聚合可以满足上述需求,但是这两种查询的分页方案是不同的。

1.1 Top hits聚合

  Top hits聚合指的是聚合时在每个分组内按照某个规则选出前N个文档进行展示。

  例如,搜索”金都“时,如果希望按照城市分组,每组按照匹配分数降序展示3条文档数据,DSL如下:

# Top hits聚合
GET /hotel_poly/_search
{
   
  "query"</

标签:hits,聚合,分页,结果,Top,查询,ElasticSearch
From: https://blog.csdn.net/qq_43753724/article/details/138119343

相关文章

  • 【第11章】SpringBoot实战篇之文章(下)含条件分页
    文章目录前言一、文章列表查询1.ArticleController2.ArticleService二、文章查询1.ArticleController2.ArticleService三、文章更新1.ArticleController2.ArticleService四、文章删除1.ArticleController2.ArticleService五、文章列表查询(条件分页)1.Artic......
  • 支付系统实战(微服务)-聚合支付系统代理商分账业务分析及报表设计
    1前言聚合支付系统数字化中台在不同的行业中都扮演着重要的角色,企业中拥有这样一套系统能够解决企业内部的收款方式和统一收款场景。特别是在当前业财一体化的大趋势下更占据了很重要的角色,聚合支付数字中台系统在跨境支付业务中也能占据了很重要的作用。技术,产品一起加......
  • 讲清楚 Elasticsearch scroll 的底层原理
    Elasticsearch的Scroll主要用于高效地分批检索大量数据记录,适用于那些数据量过大而不能一次性通过标准搜索请求获取所有结果的场景。Scroll机制的工作原理类似于数据库中的游标(cursor),它允许用户发起一次搜索请求后,通过维护一个持续的上下文(context)来分批次获取所有匹配的文档,......
  • RainBond 制作应用并上架【以ElasticSearch为例】
    文章目录安装ElasticSearch集群第1步:添加组件第2步:查看组件第3步:访问组件制作ElasticSearch组件准备工作ElasticSearch集群原理尝试Helm安装ES集群RainBond制作ES思路源代码Dockerfiledocker-entrypoint.shelasticsearch.yml......
  • vue2使用Clodop插件打印表格,分页,每页显示页头页尾,自定义纸张大小
    一、前往lodop官网,下载插件,下载中心-Lodop和C-Lodop官网主站 这里下载的window64位的,将插件安装好,运行,会看到引入项目第一种、可以直接将script标签放入vue的head中,在项目运行时自动加载。第二种、也可以将js文件下载至本地,通过import引入,前提是将CLODOP对象export出......
  • 从零手写实现 nginx-07-大文件传输 分块传输(chunked transfer)/ 分页传输(paging)
    前言大家好,我是老马。很高兴遇到你。我们希望实现最简单的http服务信息,可以处理静态文件。如果你想知道servlet如何处理的,可以参考我的另一个项目:手写从零实现简易版tomcatminicat手写nginx系列如果你对nginx原理感兴趣,可以阅读:从零手写实现nginx-01-为什么不......
  • Elasticsearch强制重置未分配的分片(unassigned)
    强制重置未分片的分片,这个问题源自于Elasticsearch维护中,Node意外退出的场景。意外退出后Elasticsearch由于网络原因或者jvm性能压力,未能短时间内分配分片。看一下分片的状态。可以看到有一些分片处于未分配状态。代码语言:javascript复制curlhttp://10.93.21.2......
  • 分布式搜索引擎ElasticSearch学习笔记
    一、Elasticsearch介绍什么是elasticsearch?一个开源的分布式搜索引擎,可以用来实现搜索、日志统计、分析、系统监控等功能什么是elasticstack(ELK)?是以elasticsearch为核心的技术栈,包括beats、Logstash、kibana、elasticsearch什么是Lucene?是Apache的开源搜索引擎类库,提......
  • C#WPF数字大屏项目实战10--不良指标分页
    1、区域划分2、区域布局 3、视图模型  4、控件绑定5、运行效果 走过路过,不要错过,欢迎点赞,收藏,转载,复制,抄袭,留言,动动你的金手指,财务自由......
  • 【DRF-11】rest-framework之分页
    前言:总共有三种分页方式1.根据页码进行分页,看第n页,每页显示n条数据;fromrest_framework.paginationimportPageNumberPaginationclassPageGroupSerializer(serializers.ModelSerializer):classMeta:model=models.UserGroupfields='__all__'......