当前位置: 首页 > news >正文

MySQL为什么要用B+树?

二叉树(二叉查找树)

平衡二叉树(B树就是B-树)(解决了二叉查找树的极端情况)

Q:具体是怎么解决的呢?

A:

  1. 树左右两边层数相差不大于1
  2. 一旦符合条件1的时候,就进行左旋/右旋

Q:为什么MySQL要用B+树?

A:

  1. B+树减少了IO次数
  2. 所有数据放在叶子节点,查询更稳定
  3. 叶子节点指向下一个叶子节点,范围查询更好

虽然平衡二叉树的查找效率很高,但是IO的次数就是树的高度(因为无法将整个索引加载道内存中),IO才是瓶颈

B树的结构

B+树的结构

//TODO

B+树的特点

  1. 非叶子节点存储索引,叶子节点存储数据(能存储更多的索引
http://www.lryc.cn/news/313147.html

相关文章:

  • 今天分享一个好看的输入法皮肤相信每个人心里住着一个少女心我们美化一下她吧
  • 力扣刷题Days11第二题--141. 环形链表(js)
  • 微信自动回复的设置
  • SpringBoot源码解读与原理分析(一)SpringBoot整体概述
  • 如何选择VR全景设备,才能拍摄高质量的VR全景?
  • Vue 3 中的 ref 和 reactive 有什么区别?
  • 【SpringBoot】mybaitsPlus的多数据源配置
  • 安卓Java面试题 1-10
  • 强化学习中动作价值函数和状态价值函数的联系区别?
  • Vue-Router路由介绍和使用
  • Waves 14 Complete:后期混音效果全套插件,打造专业级音质体验
  • DC-2靶机详解
  • 个人项目介绍4:三维园区篇
  • 哪些公司在招聘GIS开发?为什么?
  • 电脑自带dll修复在哪里,dll修复工具一键修复dll丢失问题
  • 电商数据分析15——电商平台上的产品推荐系统优化策略
  • 华硕AMD主板开启TPM2.0支持
  • Linux - 进程控制
  • redis一些概念知识
  • 01.AJAX 概念和 axios 使用
  • 外包干了一周,技术明显倒退。。。。。
  • JSON数据格式,后台@RequestBody实体类接收不到数据-首字母小写,第二个字母大写造成的参数问题
  • MySQL——性能调优
  • Java中super关键字作用及解析
  • 【LeetCode打卡】Day25|216.组合总和III、17.电话号码的字母组合
  • JS函数
  • 双非二本实习前的准备day8
  • 数据库自连接
  • json 基本上面试题目比较常问
  • Pytorch学习 day06(torchvision中的datasets、dataloader)