再有人问你为什么MySQL用B+树做索引,就把这篇文章发给她
本文是参考上述文章进行总结和补充,大家感兴趣也可以阅读原文.
目录
1. 索引
2. 二叉搜索树
3. 平衡二叉树
4. B树
5. B+树
6.扩展 -- 聚集索引 VS 非聚集索引
概念:索引是一种特殊的文件,包含着对数据表里所有记录的引用指针。可以对表中的一列或多列创建索引,并指定索引的类型,各类索引有各自的数据结构实现。
索引最形象的比喻就是图书的目录了。注意这里的大量,数据量大了索引才显得有意义,如果我想要在[1,2,3,4]中找到4这个数据,直接对全数据检索也很快,没有必要费力气建索引再去查找。
索引在mysql数据库中分三类: B+树索引, Hash索引, 全文索引
本文介绍的是工作开发中最常接触到innodb存储引擎中的的B+树索引。
innodb存储引擎https://baike.baidu.com/item/innodb/8970025?fr=aladdin
首先回顾一下,在数据结构系列学习