【面经】讲一下mysql的b+树

mysql的索引结构是b+树(一种自平衡的多路搜索树)

mysql的b+树的特点

  1. b+树使查询/插入/删除 操作都可以在o(log n)的时间复杂度内完成
  2. b+树的叶子结点之间通过指针互相连结,所以对范围查询和顺序访问也更加高效
  3. mysql的b+树只在叶子结点存储数据,而非叶子结点只保存键值或索引

b+树与b树的区别

  1. b树每个节点都存储数据;b+树只在叶子结点存储数据
  2. b树每个节点有多个子节点;b+树每个节点只有1个子节点
  3. b树叶子结点之间没有连接;b+树的叶子结点之间通过指针互相连结
  4. b树中关键字会同时出现在内部节点和叶子结点;b+树中关键字只会出现在叶子结点
  5. b树适合随机检索;b+树适合随机检索和顺序检索,磁盘读写代价更低,查询效率更稳定
相关推荐
CoderIsArt43 分钟前
Redis的三种模式:主从模式,哨兵与集群模式
数据库·redis·缓存
师太,答应老衲吧3 小时前
SQL实战训练之,力扣:2020. 无流量的帐户数(递归)
数据库·sql·leetcode
Yaml44 小时前
Spring Boot 与 Vue 共筑二手书籍交易卓越平台
java·spring boot·后端·mysql·spring·vue·二手书籍
Channing Lewis4 小时前
salesforce case可以新建一个roll up 字段,统计出这个case下的email数量吗
数据库·salesforce
追风林4 小时前
mac 本地docker-mysql主从复制部署
mysql·macos·docker
毕业设计制作和分享5 小时前
ssm《数据库系统原理》课程平台的设计与实现+vue
前端·数据库·vue.js·oracle·mybatis
ketil275 小时前
Redis - String 字符串
数据库·redis·缓存
Hsu_kk6 小时前
MySQL 批量删除海量数据的几种方法
数据库·mysql
编程学无止境6 小时前
第02章 MySQL环境搭建
数据库·mysql
knight-n6 小时前
MYSQL库的操作
数据库·mysql