美文网首页
页结构的演进-分槽页

页结构的演进-分槽页

作者: hezhangjian | 来源:发表于2021-02-14 17:04 被阅读0次

前言

读《数据库系统内幕》有感,个人感觉分槽页是个很难理解的概念,也是很实用的知识。

正文

原始的B树论文描述了一种简单的,用于定长数据的页组织方式:

image-20210214170013416

这种页有这样两个缺点

  • 除非往最右侧插入数据,否则需要移动前面的数据
  • 无法有效地管理变长地字段

所以这里自然而然地思考,因为要存储变长的数据。

变长的数据需要回收。

回收完的数据需要移动。

但是对外的偏移量不能变,这个变动会非常麻烦,至少聚簇索引需要变动,根据实现不同,甚至二级索引也要跟着更新

我们的需求是

  • 最小开销存储变长记录
  • 回收已删除记录占用地空间
  • 引用页中地记录,无论记录在哪
image-20210214165732666

分槽页通过加了一层结构,页外指针的引用都通过前面的指针引用,包括二分查找也通过前面的指针引用,来解决这个问题。如果不涉及页的变动,一切变化都在分槽页内完成。

分槽页如何解决上述问题:

  • 最小开销:分槽页唯一的额外开销是一个指针数组,用于保存记录实际所在位置的偏移量
  • 空间回收:通过对页进行碎片整理和重写,就可以回收空间
  • 动态布局:从页外部,只能通过槽ID来引用槽,而确切的位置是由页内部决定的

相关文章

  • 页结构的演进-分槽页

    前言 读《数据库系统内幕》有感,个人感觉分槽页是个很难理解的概念,也是很实用的知识。 正文 原始的B树论文描述了一...

  • 前端基础知识(一)-布局和命名

    B/S结构网站结构: 按功能分:首页、列表页、内容页、单页面、网站地图(一目了然了解整个网站功能) 按布局分:头部...

  • 周记(3.28-4.12)

    阅读: 《教育思想的演进》:900分钟以上,508页,常规阅读时间是529分钟,严重超支,3.28到3.31,周六...

  • PPT有哪些设计思维2?

    如何构建PPT演示结构呢? 我们平常在构建PPT的结构时,是不是就像这样:封面页+目录+内容页+结束页。虽然这结构...

  • 统领全文的master——目录篇

    ​ 一般PPT结构分为5个部分:封面页、目录页、过渡页、内容页、结尾页。 目录页是整个PPT的大纲,让人能够清楚演...

  • 数据页的结构

    注意:InnoDB引擎,这里说的是数据页,不是其他类型的页。 组成 File Header(文件头) Page H...

  • innerdb 的页结构

    1、前言 innerdb 读取磁盘记录的时候,肯定不是一条记录一条记录的从磁盘中读取,而是以页为单位读取记录。 i...

  • 为什么索引能提高查询速度

    MySQL 的基本存储结构 MySQL的基本存储结构是页(记录都存在页里边): 各个数据页可以组成一个双向链表 每...

  • 记录第 17 天(1):PPT 内容页

    昨天把PPT的封面页,目录页和过渡页都画好了,今天要做的是内容页的部分。 内容页与前面这些结构页相比,实质性内容多...

  • 经验笔记|利用Axure中继器和动态面板制作多合一表单元件

    在后台界面的功能结构大致分为:列表页、新增/修改页、审核页。其中列表页的查询区,新增和修改页的头部信息输入区,会有...

网友评论

      本文标题:页结构的演进-分槽页

      本文链接:https://www.haomeiwen.com/subject/wywyxltx.html