索引
记录自己学习的索引知识,贴一张笔记图:
补充:
使用索引的场景:1. 表经常select操作 2. 表记录很多 3. 列名经常在where子句和连接条件出现的
学习一个知识需要在自己大脑生成一个大概的脑图(思维导图)
索引:
- 首先在MySQL中,索引有hash索引,B+树索引两种底层结构。
- 那就搞清楚什么是hash索引,什么是B+树索引,还有它们的特性之类的。这样就知道了索引的优缺点。
- 然后搞清楚索引怎么走的,流程是什么。深入挖掘,为什么我们通常都用B+树而不是更方便的hash索引?
- 然后往外走,知道mysql核心就是存储引擎了,mysql四种引擎我们用的比较多的还是Innodb,对于Innodb底层用的就是B+树的结构。
最后
搞清楚了索引底层结构,怎么运作的,有几种分类,知道了特性,就可以针对我们实际开发中创建比较好的索引结构。毕竟我们学习知识最重要的还是用于实践开发中。