ysnbb 2021-03-27 20:35 采纳率: 100%
浏览 89
已采纳

MySQL B+树索引问题

疑问1:叶子节点内的数据是以单向链表组织的,为什么不像两页之间那样用双向链表呢?如果是单向链表,在一个页内做等值查询的话,还是要遍历每项数据才能定位,而且对于诸如"<"的查询,单向链表也没法从后往前选择数据

疑问2:非叶子节点内的索引数据也是链表结构吗?还是是数组?

感谢~

  • 写回答

4条回答 默认 最新

  • 黄智霖-blog 博客专家认证 2021-03-27 21:36
    关注

    你可以去了解一下MySQL页的结构,在一个页内其实不是直接遍历链表的,页中有一个PageDirectory区域,通过这个区域可以将单向链表分为多个组,由于数据是有序的,这个组可以使用二分法进行查找,定位到固定的一个组之后,然后再到组中去寻找数据

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥15 stable diffusion
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿