【面经】讲一下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+树适合随机检索和顺序检索,磁盘读写代价更低,查询效率更稳定
相关推荐
jason.zeng@15022075 分钟前
my.cnf详解
运维·数据库·adb
百***62859 分钟前
MySQL 常用 SQL 语句大全
数据库·sql·mysql
2501_9159184111 分钟前
移动端 HTTPS 抓包实战,多工具组合分析与高效排查指南
数据库·网络协议·ios·小程序·https·uni-app·iphone
百***69716 分钟前
MySQL数据库(SQL分类)
数据库·sql·mysql
只因在人海中多看了你一眼30 分钟前
B.40.5.1-数据库基础与核心原理
数据库
2503_9284115644 分钟前
11.11 Express-generator和文件上传和身份认证
数据库·node.js·express
长沙红胖子Qt1 小时前
关于 mariadb开源数据库忘记密码 的解决方法
数据库·mariadb
二进制的Liao1 小时前
【编程】脚本编写入门:从零到一的自动化之旅
数据库·python·算法·自动化·bash
影子24011 小时前
oralce创建种子表,使用存储过程生成最大值sql,考虑并发,不考虑并发的脚本,plsql调试存储过程,java调用存储过程示例代码
java·数据库·sql
武子康1 小时前
Java-172 Neo4j 访问方式实战:嵌入式 vs 服务器(含 Java 示例与踩坑)
java·服务器·数据库·sql·spring·nosql·neo4j