0
点赞
收藏
分享

微信扫一扫

酷开科技以用户为中心,搭建强大空间赋能的酷开系统

RJ_Hwang 2天前 阅读 3

MySQL 中的 InnoDB 存储引擎使用 B+树作为其索引结构的基础。InnoDB 是 MySQL 默认的事务型存储引擎,它支持 ACID 事务、行级锁定和外键约束等特性。

InnoDB 的表数据和索引都被存储在一个称为聚簇索引(clustered index)的 B+树结构中。
在聚簇索引中,数据行实际上存储在叶子节点上,这意味着表数据与主键索引紧密绑定,按照主键的顺序存储。这种结构的优势是,对主键的查询可以非常快速,因为索引和数据都在同一个结构中。

对于非主键索引(也称为辅助索引或二级索引),InnoDB 同样使用 B+树结构,但是叶子节点不直接包含数据行的全部数据。
相反,它们包含了对应数据行的主键值。当通过非主键索引进行查询时,InnoDB 首先在辅助索引的 B+树中查找,然后使用找到的主键值在聚簇索引的 B+树中检索完整的数据行。(第二步,回到主键索引树搜索的过程,我们称为回表)

总结一下,InnoDB 使用 B+树作为聚簇索引和非聚簇索引的数据结构,这使得它在执行范围查询和顺序访问时非常高效,同时也支持快速的插入、删除和更新操作。

举报

相关推荐

0 条评论