什么是ElasticSearch的深度分页问题?如何解决?

在ElasticSearch中进行分页查询通常使用from和size参数。当我们对ElasticSearch发起一个带有分页参数的查询(如使用from和size参数)时,ElasticSearch需要遍历所以匹配的文档直到达到指定的起始点(from),然后返回从这一点开始的size个文档

在这个例子中:

1.from 参数定义了要跳过的记录数。在这里,它跳过了前20条记录。

2.size参数定义了返回的记录数量。在这里,它返回了10条记录。

from +size 的总数不能超过Elasticsearch索引的index.max result window设置,默认为10000。这意味着如果你设置from为9900,size为100,查询将会成功。但如果from为9900,size为101,则会失败。

ES的检索机制决定了,当进行分页查询时,Elasticsearch需要先找到并处理所有位于当前页之前的记录。例如,如果你请求第1000页的数据,并且每页显示10条记录,系统需要先处理前9990条记录,然后才能获取到你请求的那10条记录。这意味着,随着页码的增加,数据库需要处理的数据量急剧增加,导致查询效率降低。

这就是ES的深度分页的问题,深度分页需要数据库在内存中维护大量的数据,并对这些数据进行排序和处理,这会消耗大量的CPU和内存资源。随着分页深度的增加,查询响应时间会显著增加。在某些情

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/724454.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ThreadLocal通俗解读,举个例子?

ThreadLocal 解读 ThreadLocal 是 Java 中一个用来创建线程局部变量的类。它为每个使用该变量的线程提供独立的变量副本 线程局部变量意味着对于同一个 ThreadLocal 实例,在不同的线程中访问到的值是不同的,每个线程都有自己的变量副本。这样可以在多线…

代码学习记录13

随想录日记part13 t i m e : time: time: 2024.03.06 主要内容:今天的主要内容是二叉树的第二部分哦,主要有层序遍历;翻转二叉树;对称二叉树。 102.二叉树的层序遍历226.翻转二叉树101. 对称二叉…

MySQL用户创建和权限分配

MySQL用户创建和权限分配 用户创建 查看用户 select user,host from user; 创建用户 create user ‘用户名’ ‘host’ identified by 密码’; 删除用户 drop user ‘用户名’ ‘host’; 更新host update user set host ‘%’ where user 用户名‘; 权限分配 查…

逢7过,从任意一个数字开始报数,当你要报的数字包含7或者是7的倍数时都要说:过(1~100之间满足逢7必过规则的数据)

分析:这题就是碰到 7是个位,7是十位,7的倍数 就要过 // 1 2 3 4 5 6 过 8 9 10 11 12 13 过 14 15 16 过 18 19 20 过。。 69 过 过 过 过 过 。。80.。。 判断每个数字,如果符合条件,就打印过,如果不符…

2024中国重庆沐浴博览会5月29日-31日

2024中国沐浴展——世界级温泉胜地,引领健康产业新风向 2024第五届中国沐浴健康产业(重庆)博览会暨第十一届中国沐浴温泉文化节 ——世界级温泉胜地,引领健康产业新风向 随着人们生活水平的提高和健康意识的增强,沐…

LeetCode-第67题-二进制求和

1.题目描述 给你两个二进制字符串 a 和 b ,以二进制字符串的形式返回它们的和。 2.样例描述 3.思路描述 将两个二进制字符串转换成整型,然后相加后的整型转为二进制字符串 4.代码展示 class Solution(object):def addBinary(self, a, b):# 将字符串…

AI新工具(20240306) mlx-swift-chat Mac运行本地模型;Comflowyspace开源AI图像和视频生成工具

1: mlx-swift-chat 专为 Apple 硅片设计的高效机器学习框架,支持在本地实时运行 LLM 模型(如 Llama、Mistral) mlx-swift-chat 是一个为苹果系统(例如你的笔记本电脑上的Apple Silicon)特别设计的机器学习框架 MLX 的…

计划任务和日志

一、计划任务 计划任务概念解析 在Linux操作系统中,除了用户即时执行的命令操作以外,还可以配置在指定的时间、指定的日期执行预先计划好的系统管理任务(如定期备份、定期采集监测数据)。RHEL6系统中默认已安装了at、crontab软件…

前端如何实现高度的自动过渡

主要是利用了浏览器的渲染机制。 <!doctype html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport"content"widthdevice-width, user-scalableno, initial-scale1.0, maximum-scale1.0, mini…

linux系统elk组件kibana部署

Kibana部署 Kibana部署安装配置Kibana安装配置启动 安装配置Nginx反向代理配置YUM源&#xff1a;安装&#xff1a;配置反向代理 配置授权用户和密码启动nginx Kibana部署 安装配置Kibana 安装 tar zxf kibana-7.13.2-linux-x86_64.tar.gz -C /usr/local/配置 echo server.…

扫码看图的预览效果怎么做?图片的二维码如何在线生成?

图片二维码是现在很常用的一种预览图片的方式&#xff0c;比如照片、海报、动态图、拍摄的图片等类型的内容都可以用二维码的方式在手机上预览。在制作图片二维码时候&#xff0c;现在大多会通过网上的图片二维码生成器来制作&#xff0c;直接用专业的功能&#xff0c;就可以快…

SoraAI优先体验资格注册教程

SoraA1视频工具优先体验资格申请 申请网址&#xff1a;https://openai.com/form/red-teaming-network 申请步骤&#xff1a; 填写基础信息 请使用英文根据内容填写以下内容&#xff0c;名、姓、电子邮件、居住国家、组织隶属关系(如果有)、教育水平 、学位&#xff08;哪个领…

视频推拉流EasyDSS平台直播通道重连无法转推的原因排查与解决

视频推拉流EasyDSS视频直播点播平台&#xff0c;集视频直播、点播、转码、管理、录像、检索、时移回看等功能于一体&#xff0c;可提供音视频采集、视频推拉流、播放H.265编码视频、存储、分发等视频能力服务。 用户使用EasyDSS平台对直播通道进行转推&#xff0c;发现只要关闭…

大势智慧黄先锋:现实世界数字重建 拥抱AI 擘画自主可控的三维画卷

来源&#xff1a;中国地理信息产业协会 实景三维涉及到大面积、高精度的地理空间信息数据&#xff0c;然而早期国内99%以上的实景三维数据制作测绘单位都基于国外软件进行三维重建&#xff0c;如此重要的工作大量使用国外软件&#xff0c;如何确保国家地理空间信息的安全&#…

ONNX-TensorRT

ONNX 的 TensorRT 后端 解析 ONNX 模型以使用TensorRT执行。 另请参阅TensorRT 文档。 有关最近更改的列表&#xff0c;请参阅更改日志。 有关常见问题和疑问的列表&#xff0c;请参阅常见问题解答。 如需业务咨询&#xff0c;请联系Researchinquiriesnvidia.com 如需新闻…

JVM中CMS和G1垃圾回收器的区别

JVM&#xff08;Java虚拟机&#xff09;中的CMS&#xff08;Concurrent Mark-Sweep&#xff09;和G1&#xff08;Garbage First&#xff09;是两种用于垃圾回收的不同算法。它们都旨在减少垃圾回收对应用程序性能的影响&#xff0c;但它们的实现方式和重点略有不同。 CMS &…

音频设备的3种硬件接口- PCM,I2S和AC97

一、PCM接口 ​ ​针对不同的数字音频子系统&#xff0c;出现了几种微处理器或DSP与音频器件间用于数字转换的接口。最简单的音频接口是PCM&#xff08;脉冲编码调制&#xff09;接口&#xff0c;该接口由时钟脉冲&#xff08;BCLK&#xff09;、帧同步信号&#xff08;FS&a…

【MySQL】事务?隔离级别?锁?详解MySQL并发控制机制

目录 1.先理清一下概念 2.锁 2.1.分类 2.2.表锁 2.3.行锁&#xff08;MVCC&#xff09; 2.4.间隙锁 2.5.行锁变表锁 2.6.强制锁行 1.先理清一下概念 所谓并发控制指的是在对数据库进行并发操作时如何保证数据的一致性和正确性。在数据库中与并发控制相关的概念有如下几…

android开发基础有哪些,985研究生入职电网6个月

不好意思久等了 这篇文章让小伙伴们久等了。 一年多以来&#xff0c;关于嵌入式开发学习路线、规划、看什么书等问题&#xff0c;被问得没有一百&#xff0c;也有大几十次了。但是无奈自己对这方面了解有限&#xff0c;所以每次都没法交代&#xff0c;搞得实在不好意思。 但…

python之十进制转化成n进制

思路&#xff1a;除以n得商取模&#xff0c;然后再用商除以n得商取模&#xff0c;依此类推&#xff0c;直到商为0&#xff0c;最后将余数逆序输出即为结果 核心代码 result "" # 结果 while x > 0:a x % n # 余数result result str(a)x x // n # 商prin…