目录
前言
有的公司,面试会问很奇怪的问题,比如一个B+Tree能存放多少数据?
若是大家平时没有关注Mysql中的一些基础参数,那么这个问题,是没法计算得出的,接下来给大家提供个思路,以免下次问到,无从下手。
一、B+Tree数据结构
以Innodb存储引擎为例,B+Tree作为存储索引的数据结构。
![](https://i-blog.csdnimg.cn/blog_migrate/cbe7e5924be953963b4b5bb90848ffdb.png)
其中B+Tree包括叶子节点和非叶子节点。
叶子节点
若是主键索引,存储的是主键id(主键列),完整行数据(非主键列),事务id,用于事务和MVCC的回滚指针。
若是非主键索引,存储的是主键id(主键列),索引id。