Mysql大数据量表分页查询性能优化

server/2024/12/25 13:04:36/

一、模拟场景

1、产品表t_product,数据量500万+

2、未做任何优化前,cout查询时间大约4秒;LIMIT offset, count 时,offset 值较大时查询时间越久。

count查询

SELECT COUNT(*) AS total FROM t_product WHERE deleted = 0 AND tenant_id = 1

 分页查询

SELECT * FROM t_product WHERE deleted = 0 AND tenant_id = 1 ORDER BY id DESC LIMIT 1000000,10

 

3、当表里边还有很多需要翻译的字段则整个分页查询接口的请求延迟大约在10秒以上。

二、原因分析

Count求总数性能问题原因:InnoDB存储引擎
  • 特性
    • InnoDB 不存储表的总行数。
    • 每次执行 COUNT(*) 时,InnoDB 需要逐行扫描,计算符合条件的记录数。
    • </

http://www.ppmy.cn/server/153043.html

相关文章

每天40分玩转Django:Django表单集

Django表单集 一、今日学习内容概述 学习模块重要程度主要内容表单集基础⭐⭐⭐⭐⭐表单集定义、基本用法内联表单集⭐⭐⭐⭐⭐内联表单、关联数据表单集验证⭐⭐⭐⭐自定义验证、错误处理动态表单集⭐⭐⭐⭐动态添加删除表单 二、基本模型定义 # models.py from django.db…

启用Linux防火墙日志记录和分析功能

防火墙的基本功能是阻止来自可疑网络/来源的连接。它会检查所有连接的源地址、目的地址和端口,并决定是否允许或阻止流量。防火墙的每个操作都会记录为日志数据。监控和分析这些日志对于保护您的网络免受攻击至关重要。要这样做,您需要首先启用日志功能。以下是在Linux防火墙…

[创业之路-204]:《华为战略管理法-DSTE实战体系》- 5-平衡记分卡绩效管理

目录 一、平衡计分卡概述 1、平衡计分卡的基本概念 2、平衡计分卡的发展阶段 3、平衡计分卡在华为的应用 4、平衡计分卡的优缺点 五、财务&#xff08;股东&#xff09;、顾客&#xff08;用户&#xff09;、内部运营&#xff08;内部&#xff09;及学习与发展&#xff0…

微服务openfeign配置重试机制

场景&#xff1a; 1、在实际开发中&#xff0c;通过feign调用其他服务&#xff0c;如果出现read-timeout超时、或调用出现异常 2、如上问题&#xff0c;有时候可能是网络速度、网路抖动等原因导致超时异常&#xff0c;并非程序本身错误&#xff0c;所以可以配置openfeign重试…

ALPHA第四章 多态,接口,抽象类

在给出的选项中&#xff0c;错误的叙述是&#xff1a; 子类可以继承父类的构造函数 详细分析&#xff1a; 1. 子类可以继承父类的构造函数 错误的。 在 Java 中&#xff0c;子类不能继承父类的构造函数。构造函数是用来初始化对象的&#xff0c;因此构造函数是不能被继承的&a…

Linux -- 线程的优点、pthread 线程库

目录 线程的优点 pthread 线程库 前言 认识线程库 简单验证线程的独立栈空间 线程的优点 与进程之间的切换相比&#xff0c;线程之间的切换需要操作系统做的工作要少得多。 调度进程时&#xff0c;CPU 中有一个 cache&#xff08;缓存&#xff0c;提高运行效率&#xff0…

Linux RTC 驱动框架

目录 一、实时时钟&#xff08;RTC&#xff09;介绍1.1 概述1.2 功能1.3 应用场景1.4 工作原理1.5 对外接口1.6 常见 RTC 芯片1.7 在 Linux 系统中的应用1.8 注意事项 二、Linux 内核 RTC 驱动框架2.1 相关源码文件介绍2.2 核心数据结构2.2.1 struct rtc_device2.2.2 rtc_class…

memcached 与 redis 的区别?

1、Redis 不仅 仅 支 持 简 单 的 k/v 类型 的 数 据 &#xff0c;同时 还 提 供 list&#xff0c;set&#xff0c;zset&#xff0c;hash等数 据 结 构 的 存 储 。而 memcache 只支 持 简 单 数 据 类 型 &#xff0c;需要 客 户 端 自 己 处 理 复杂对 象 2、 Redis 支持 数 …