MySQL 不完全入门指南 (3)

想了解「其余字段」还有哪些、以及「页」的完整面貌的,可以去看看我之前写的页的文章 MySQL 页完全指南——浅入深出页的原理,再次就不再赘述。

索引

了解完页之后,索引是什么就一目了然了。InnoDB 底层的存储使用的数据结构为 B+树,B树的变种。MySQL 中有两种索引,分别是聚簇索引和非聚簇索引,听着很高大上。

其实了解完「页」的底层原理,要区分它们就变成的很简单了。

聚簇索引的叶子结点上,存储的是「页」

**非聚簇索引(二级索引)**的叶子结点上,存储的是「主键ID」。很多时候,我们都需要通过非聚簇索引拿到主键,再根据这个主键去「聚簇索引」中拿完整的数据,这个过程还有一个很有意思的名字叫「回表」。

至于为什么底层数据结构要用 B+树 和 B树,大概是因为以下三点:

B+树能够减少 I/O 的次数

查询效率更加的稳定

能够更好的支持范围查询

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzpsfs.html