首页 > 数据库技术 > 详细

MySQL索引入门

时间:2021-01-11 23:06:46      阅读:40      评论:0      收藏:0      [点我收藏+]

MySQL索引入门

索引于MySQL数据库,就像是目录于书籍,读者可以通过目录可以快速定位到自己想要的内容。同时,索引基本是对MySQL进行查询性能优化最有效的手段。

因为MySQL的索引是在引擎层而不是服务器层实现的,所以不同存储引擎的索引的种类和工作方式是不同的,即便看起来相同,底层实现逻辑也可能大相径庭。下面列举一下MySQL支持的索引种类:

  1. B-Tree索引(其实使用B+Tree实现)
    • 一般来说,如果没有特别说明,MySQL的索引都会是B-Tree索引。
    • 虽然叫做B-Tree索引,但其实很多存储引擎使用的是B+Tree(比如InooDB引擎),通过让每一个叶子节点包含住指向下一个叶子节点的指针,来方便叶子节点的范围遍历。
    • B+Tree是一种平衡多叉树(数据结构有序且平衡,索引的性能消耗也来自其为保持有序和平衡而做的数据调整)
    • B-Tree索引之所以能加快速访问数据的速度,是因为它不需要进行全表的扫描来获取数据,而是通过从索引的根节点开始进行搜索(复杂度马上从N级别降低到log m(N)级别),往下查找,找到叶子节点(叶子节点指针就是指向数据)或找不到合适的叶子节点(数据找不到)为止。

MySQL索引入门

原文:https://www.cnblogs.com/keep250/p/14264220.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!