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

MySQL B+树索引问题

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

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

感谢~

  • 写回答

4条回答 默认 最新

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

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

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

报告相同问题?