面试知识点学习2——聚簇索引—页分裂(示意图来源于知乎@胖懒鸭)

聚簇索引——页分裂

  • 第十页

    面试知识点学习2——聚簇索引—页分裂(示意图来源于知乎@胖懒鸭)_第1张图片

  • 第十一页

面试知识点学习2——聚簇索引—页分裂(示意图来源于知乎@胖懒鸭)_第2张图片

  • 此时27没有地方插入
  • InnoDB的做法(简化版):

    • 1.创建新页
    • 2.判断当前页(页#10)可以从哪里进行分裂(记录行层面)
    • 3.移动记录行
    • 4.重新定义页之间的关系

面试知识点学习2——聚簇索引—页分裂(示意图来源于知乎@胖懒鸭)_第3张图片

页#11保持原样,但是页之间的关系发生了改变

页#10相邻的前一页不变,后一页为页#12;
页#12相邻的前一页为页#10,后一页为页#11;
页#11相邻的前一页为页#12,后一页不变。

所以一次页分裂操作,需要修改3个页。

你可能感兴趣的:(mysql)