美文网首页
InnoDB 表空间(二)

InnoDB 表空间(二)

作者: wayyyy | 来源:发表于2022-04-14 03:03 被阅读0次
页面类型

InnoDB 是以页为单位来管理存储空间的,针对不同的使用场景设计了不同类型的页面。

类型名称 十六进制 描述
页面的结构
image.png
  • File Header
    记录页面的通用信息。

    名称 占用空间大小 描述
  • File Trailer
    校验页是否完整,保证页面在从内存刷新到磁盘后内容是相同的。

区和段的概念

表空间中的页面太多,为了方便管理,于是又提出了区的概念。对于16KB的页来说,连续的64个页就是一个区,也就是说一个区默认占用1MB空间大小。每256个区划分为1个组。

image.png
  • 为什么要引入区的概念呢?


    image.png

    我们向表中插入一条记录,本质上就是向该表的聚簇索引以及所有二级索引代表的B+树节点中插入数据。而B+树每一层中的页都会形成一个双向链表,如果以页为单位来分配存储空间。双向链表相邻的两个页之间的在磁盘的物理位置可能离得非常远。对于传统的机械磁盘来说,需要重新定位磁头位置,也就是说会产生随机IO。所以,为了尽量让这些在页面链表中相邻页的物理位置页相邻,尽可能的消除随机IO,才引入了区的概念。一个区就是物理位置上连续的64个页面,在表中的数据量很大时,为某个索引分配空间的时候就不再以页为单位,而是按照区为单位分配,甚至在表中数据非常多的时候,可以一次性分配多个连续的区。

相关文章

  • Mysql之InnoDB存储结构

    InnoDB存储结构 Innodb逻辑存储单元为为表空间,段,区,页 InnoDB表空间 InnoDB存储引擎表中...

  • InnoDB 表空间(二)

    页面类型 InnoDB 是以页为单位来管理存储空间的,针对不同的使用场景设计了不同类型的页面。 类型名称十六进制描...

  • innodb文件结构解析

    innodb 物理文件解析 1 综述 innodb的物理文件包括系统表空间文件ibdata,用户表空间文件ibd,...

  • 浅谈MySQL中的ibdata1

    前言:InnoDB中有共享表空间和独立表空间的概念。共享表空间就是ibdata1,独立表空间放在每个表的.ibd(...

  • InnoDB-B+树索引[一]

    InnoDB知识点梳理 InnoDB逻辑存储结构 表空间:数据都存放在表空间之下 段:数据段,索引段,回滚段 区:...

  • mysql数据物理结构

    表空间:ibdata公用表空间文件,也可以通过配置innodb_file_per_table设置独立表空间文件 i...

  • InnoDB 共享表空间 & 独立表空间

    默认,所有innodb的table和indexcu存储在system tablespace(共享表空间)。也可以把...

  • InnoDB 表空间(一)

    MySQL 数据目录 如何确定 MySQL 数据目录> SHOW VARIABLES LIKE 'datadir'...

  • MySQL常用存储引擎之Innodb

    MySQL默认引擎Innodb Innodb使用表空间进行数据存储 控制参数:innidb_file_per_ta...

  • 共享空间表和独立空间表

    对于innodb的数据结构,首先要解决两个概念性的问题: 共享表空间以及独占表空间。 什么是共享表空间和独占表空间...

网友评论

      本文标题:InnoDB 表空间(二)

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