mysql索引—B+树 查找

Posted 翔之天空

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql索引—B+树 查找相关的知识,希望对你有一定的参考价值。

 

参考:《mysql内核:innodb存储引擎》 第八、十章

            innodb对B树游标的定位过程以及对“小于(等于)B树最小记录”的特殊处理:https://wqtn22.iteye.com/blog/1820436

 

 

测试环境:Mysql 5.6.43版本

 

此文只是对上面的参考文章 做了一个整理 。

 

 

概念:通过索引查找具体记录的流程:

1)通过B+树索引定位到具体page,把物理page加载到内存

2)在物理page中二分查找到相应的slot(page_cur_search_with_match方法)

3)在slot中线性查找具体的数据,这里要做逻辑记录(执行的语句转化为的逻辑记录)和物理page记录的比较(cmp_dtuple_rec_with_match方法),最终查找出数据返回

 

 

 

以上是关于mysql索引—B+树 查找的主要内容,如果未能解决你的问题,请参考以下文章

mysql B+树索引简述

mysql索引—B+树 查找

Mysql索引——B-Tree/B+Tree架构

MySQL 索引与 B+ 树

为什么MySQL数据库索引选择使用B+树?

为什么MySQL数据库索引选择使用B+树?