深入理解MySQL InnoDB中的页分裂与页合并

InnoDB 的数据页

InnoDB 的数据页是存储引擎中用于保存数据的基本单位。每个数据页是磁盘上的一个连续区域,通常大小为 16KB,当然,这个大小可以通过配置进行调整。这意味着 InnoDB 在读取和写入时,每次以 16KB 为单位进行操作。无论是从磁盘到内存的读取,还是从内存到磁盘的持久化写入,最小的操作单位都是 16KB。

B+树的每个节点都对应一个数据页,包括根节点、非叶子节点和叶子节点。B+树通过节点之间的指针连接了不同层级的数据页,从而构建了有序的索引结构。

图片

图片

通过 B+树的搜索过程,可以从根节点开始逐层遍历,最终到达叶子节点,从而找到所需的数据行。

因此,数据页是实际存储数据行的物理空间单位,通过页的方式进行磁盘读写操作。B+树通过节点和指针的组织,构建了层次结构的索引,用于快速定位和访问数据行。

在 B+树中,非叶子节点对应着数据页,其中存储了主键及指向子节点(即其他数据页)的指针。叶子节点则包含了实际的数据行,每个数据行存储在一个数据页中。

通过这种结构,InnoDB 利用 B+树和数据页的结合,实现了高效的数据存储和检索。B+树提供了快速的索引查找能力,而数据页则提供了实际管理和存储数据行的机制。它们相互配合,使得 InnoDB 能够高效处理大规模数据的访问需求。

数据页的构成

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

奔向理想的星辰大海

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值