当前位置: 首页 > article >正文

《深入浅出数据索引》- 公司内部培训课程笔记

深入浅出数据索引
内容:索引理论,索引常见问题,索引最佳实践,sql优化实战,问答

在这里插入图片描述
哈希不支持范围查询
在这里插入图片描述
4层 几个亿
5层 几十亿上百亿
B树的分裂,50-50分裂 都是往上插一个元素(红黑树是左右旋转,B树不是)、90-10分裂是最右侧插入
Root节点分裂才会长高,节点之间双向索引
在这里插入图片描述
冗余索引:a、ab
低效回表:a每次都要回找b,不如ab

index filter 而不是 index access,access利用了索引的结构,不用回表
在这里插入图片描述

索引碎片:开发不用关注
where a = 1 and b < 9 order by c
看b的区分度,区分度好要加,就是ab,区分度不高就不加,就是 ac
等值优先,等值后才可以带排序
复合索引越多字段,越难用到,而且索引肥的话层级高,效率低,不合适建立太多,多问问自己索引用在什么地方,有很多作用
索引多会导致选错索引

索引优化的思路?

  • 优先:影响应用,紧急,不管消耗多少资源,一定要想办法优化
  • 其次:Top、慢日志,是整体考虑,消耗CPU或者耗时等

must must
看着执行计划是否ok
必须看懂执行计划,否则只能按照规范和经验,不能从源头上来将经验理论化

索引的更新,会维护日志(何种日志?),在加完索引之后,会将这部分进行插入

~ 点个赞、关注支持下,后续会推出更多优质的内容,谢谢!


http://www.kler.cn/a/578112.html

相关文章:

  • JQuery 语法 $
  • python 程序一次启动有两个进程的问题(flask)
  • Vue.js + Element Plus:擦出高效开发的火花
  • JAVA实战开源项目:在线音乐网站(Vue+SpringBoot) 附源码
  • 芯麦GC4938:高功率电机驱动芯片,全面替代A4938/Allegro的国产优选方案
  • 【全栈开发】---- 一文掌握Django的轮询、长轮询
  • Virtex-II 系列FPGA 的配置数据处理流程
  • 【Azure 架构师学习笔记】- Azure Databricks (17) --Delta Live Table和Delta Table
  • 嵌入式学习笔记-卡尔曼滤波,PID,MicroPython
  • K8s 网络-基本环境准备 Day01
  • DeepSeek与浏览器自动化AI Agent构建指南
  • LVGL直接解码png图片的方法
  • Matlab读取二维数据的csv文件,并绘制为一维的折线图
  • GCC RISCV 后端 -- GCC Passes 注释
  • 100天精通Python(爬虫篇)——第115天:爬虫在线小工具_Curl转python爬虫代码工具(快速构建初始爬虫代码)
  • Laya中runtime的用法
  • 机器学习之强化学习
  • Locker 是 Godot 的一个开源插件,它提供了一种快速且可扩展的方式来使用不同的策略保存和加载数据,并且具有开箱即用的 JSON 和加密功能。
  • 【Windows下Gitbook快速入门使用】
  • 【GPT入门】第5课 思维链的提出与案例