公开课学习——基于索引B+树精准建立高性能索引

ops/2024/9/23 4:31:07/

文章目录

    • 遇到慢查询怎么办?—— 创建索引
    • 联合索引的底层的数据存储结构长什么样?

mysql脑图
阿里开发手册
在这里插入图片描述

遇到慢查询怎么办?—— 创建索引

在这里插入图片描述
不用索引的话一个一个找太慢了,用索引就快的多。
假如使用树这样的结构建立索引,这样找一个数据,就可以减少查询磁盘的次数(IO性能很低),提高查询效率。

  • mysql为什么没有采用二叉树存储数据?
    假如是col1的数据,存进二叉树就是单支树,退化成链表了,索引白建了,对于自增列不支持高效查询。
  • mysql为什么没有采用红黑树存储数据?
    数据量大的话,树太高。
  • 能不能对红黑树做优化,当数据量大的时候,树的高度依旧可控
    扩大每个节点的存储数据,当存的数据多的时候,高度依旧可控——B树
    在这里插入图片描述
    mysql也不是原封不动用B树,而是做了优化——B+树

在这里插入图片描述
B+树的非叶子节点放到内存,叶子节点放在磁盘,节点内可以使用折半查找,这样查找效率非常高,只需要去磁盘找一次。
在这里插入图片描述
工作中很少使用myIASM,不支持事物,锁等等,我们使用Innodb
在这里插入图片描述

  • 为什么建议InnoDB表要键主键,并且推荐使用整形的自增主键
  • 为什么非主键索引结构叶子节点存储的是主键值?
    因为建了主键,使用主键索引维护这个索引结构,如果没有主键,那就找第一个唯一索引,使用这个唯一索引维护索引结构,假如没有唯一索引怎么办?他就在后台维护一个隐藏字段rowId,从而维护好索引的结构,所以建立主键索引,我们可以直接用,查找效率高哎。同时,整型比大小效率高(UUID是字符串哦),占用空间小,为什么自增呢?
    因为用了自增的节点,B+树永远都是往后面维护节点,可以避免节点的分裂,很少影响性能。所以自增可以提升数据插入的效率

在看这个
在这里插入图片描述
hash索引不支持范围查询,所以也不用这个索引结构。

联合索引的底层的数据存储结构长什么样?

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
最左前最先原则,只有第一条会走联合索引。
最左前最先原则?为什么会有这个呢?要先排name,才能确定你排的age是唯一的。

后面的内容,额,公开课其实就是卖课的,后面都是主要为了卖课,不讲东西啦。


http://www.ppmy.cn/ops/21068.html

相关文章

高速风筒电源IC辉芒微FT8440E /FT8440A

深圳市三佛科技有限公司分享相关资料,高精度、高效率、低成本离线式功率开关 FT8440x是-款高性能、高精度、低成本的非隔离PWM功率开关。它包含一个专门]的电流模PWM控制器和一个高压功率开关管。内置的误差放大器经过优化保证优越的动态响应。高精度的内部分压电阻…

vue2[黑马笔记]

vue基础 是什么—javascript框架 构建用户界面的前端框架 1.构建用户界面用vue往html页面中填充数据 2.框架现成的解决方案,遵守框架的规范去实现自己的业务功能学习vue 就是学习vue框架中规定的用法vue的指令组件(对ul结构的复用)&#x…

可替换XC6206P332MR的润石超低功耗LDO RS3221-3.3YF3助力智能门锁设计,精度低至1%

润石科技的RS3221,可满足超低功耗,在智能门锁设计时,兼容替换TOREX的XC6206P332MR,具体请参考图1参数对比: 图1:RS3221-3.3YF3与XC6206P332MR电性能参数对比 通过上表可知, 1、 RS3221-3.3YF3…

leetcode905-Sort Array By Parity

题目 给你一个整数数组 nums,将 nums 中的的所有偶数元素移动到数组的前面,后跟所有奇数元素。 返回满足此条件的 任一数组 作为答案。 示例 1: 输入:nums [3,1,2,4] 输出:[2,4,3,1] 解释:[4,2,3,1]、[2,…

【综述】DSP处理器芯片

文章目录 TI DSP C2000系列 TMS320F28003X 典型应用 开发工具链 参考资料 TI DSP TI C2000系列 控制领域 TI C5000系列 通信领域 TI C6000系列 图像领域 C2000系列 第三代集成了C28浮点DSP内核,采用了65nm工艺(上一代180nm) 第四代正在…

【python】swjtu西南交大互联网搜索引擎 项目一 报告:搜索引擎文本预处理

项目要求: 通过下载引擎(Web Crawler/Spider)自动下载至少500个英文文档/网页,以及500个中文文档/网页,越多越好,并保留原始的文档/网页备份(如:News_1_Org.txt) 编程对所下载文档进行自动预处理: 将各个单词进行字…

Cadence OrCAD学习笔记(1)OrCAD入门介绍

最近换份工作主要用到Cadence,之前都是用AD居多,所以现在也开始记录下Cadence学习过程,方便后面复习。 参考教程: OrCAD视频教程第1期:OrCAD入门介绍_哔哩哔哩_bilibili 本期主要介绍OrCAD的主要部件 其中用的较多的…

【御控工业物联网】JAVA JSON结构转换、JSON结构重构、JSON结构互换(5):对象To对象——转换映射方式

御控官网:https://www.yu-con.com/ 文章目录 御控官网:[https://www.yu-con.com/](https://www.yu-con.com/)一、JSON结构转换是什么?二、术语解释三、案例之《JSON对象 To JSON对象》四、代码实现五、在线转换工具六、技术资料 一、JSON结构…