ES deeping pageing
deep pageing
在分页的时候会出现deep pageing 就是说搜索的特别深,比如共有60000条数据,每个shard上分到了20000条数据,每页是10条
数据,这个时候,你要搜索到第1000页
每个shard,其实都要返回的是最后十条数据,看起来好像是每个shard上的10001-10010,10条数据,不是这样理解的
你的请求首先可能打倒不包含这个index的shard的node上去,这个node就是coordinating node,那么这个coordinate node就会将
搜索请求转发到index的三个shard所在的node上去
比如说要搜索60000条数据中的第1000页,实际上每个shard都要将内部的20000条数据中的第10001-10010条数据,拿出来,不是
才10条,是10010条数据,3个shard,每个shard都返回10010条数据给coordinate node,coordinate node总共会收到30030条数
据,然后在这些数据中进行排序,_score,相关度分数,然后取到排位最高的前10条数据,其实就是我们要的最后的1000页的10条
数据
搜索的过程中,就需要在coordinate node上保存大量的数据,还要进行大量的排序,排序后,再取出对应的那一页,所以这个
过程,即耗费网络带宽,耗费内存,还耗费cpu,所以deeping paging的性能问题,我们尽量避免出现这种操作
ES deeping pageing相关推荐
- ES 性能调优,这可能是全网最详细的 Elasticsearch 性能调优指南
文章目录 1.通用优化策略 1.1 通用最小化法则 1.2 职责单一原则 1.3 其他 2.写性能调优 2.1 基本原则 2.2 优化手段 2.2.1 增加 flush 时间间隔, 2.2.2 增加` ...
- Android OpenGL ES(十一)绘制一个20面体 .
前面介绍了OpenGL ES所有能够绘制的基本图形,点,线段和三角形.其它所有复杂的2D或3D图形都是由这些基本图形构成. 本例介绍如何使用三角形构造一个正20面体.一个正20面体,有12个顶点,20 ...
- es日期format_elasticsearch存储日期格式字段
elasticsearch创建index之后,可以设置mapping,如果mapping中没有设置date的format,那么默认为两种格式: date_optional_time 此格式为ISO86 ...
- data es集群master_Kubernetes Helm3 部署 ElasticSearch amp; Kibana 7 集群
一.简介 Elasticsearch 是一个分布式的搜索和分析引擎,可以用于全文检索.结构化检索和分析,并能将这三者结合起来.设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便,轻松扩 ...
- ES集群状态、节点、索引等查看及根据字段、排序查询
ES集群基础: 1. 查看集群: http://172.xxx.xxx.8:9200 2. 查看状态: http://172.xxx.xxx.8:9200/_cat/health?v 3. 查看索引: ...
- ES单字段支持的最大字符数
在使用ES时,需要用到进行检索的字段都需设置为 keyword,不需要检索的可以设置 text. 设置keyword,默认不分词,它的最大长度和utf-8编码有关,最大长度为32766字节,如果字段长 ...
- ES强制删除docs.deleted 标记的文档 document
ES查看集群状态.节点.索引等及基本查询 ES会产生一些 docs.deleted 的数据如下图,怎么彻底删除呢? 删除数据的时候:可以使用_delete_by_query,然而这并不彻底. 只是逻辑 ...
- es安装的时候遇到的所有的坑
不允许root用户启动. 解决办法,创建子用户. 在linux下需要注意.es默认不能用root用户启动.我们需要新建一个用户来启动. groupadd es adduser es-user ...
- 利用JNI技术在Android中调用C++形式的OpenGL ES 2.0函数
1. 打开Eclipse,File-->New-->Project--->Android-->AndroidApplication Projec ...
- es父子结构查询_ES 父子文档查询
父子文档的特点 1. 父/子文档是完全独立的. 2. 父文档更新不会影响子文档. 3. 子文档更新不会影响父文档或者其它子文档. 父子文档的映射与索引 1. 父子关系 type 的建立必须在索引新建或 ...
最新文章
- 你哪来这么多事(四):职工信息排序
- 防止入侵者嗅探web密码
- @Value 注入静态变量
- 关于python 和C++使用cv画矩形并填充颜色同时填充文字
- 生产者/消费者模式(一)
- SpringMVC 使用注解时控制器传参
- sql查询初学者指南_适用于初学者SQL Server查询优化技巧与实际示例
- matlab2c使用c++实现matlab函数系列教程-atan函数
- MFC列表控件(ListControl)
- Android 组件系列-----Activity保存状态
- dsoframer java_基于DsoFramer控件的Office编辑控件
- AD14简明使用教程(同样试用于手工制板)
- matlab interp插值函数
- 领导越讲人情,团队越不行?
- VMware之虚拟交换机
- python爬取qq音乐排行榜_手把手教你使用Python抓取QQ音乐数据!
- 【六袆 - Java】订单拆单记录一
- html5页面弹窗,H5页面怎么设置弹窗
- python中列表概念,Python 列表的简单介绍
- mysql字符集与校对规则设置_MySQL 字符集与校对规则