MySQL数据库中,单表数据存储

  1. MySQL 的表数据是以页的形式存放的,页在磁盘中不一定是连续的。

  2. 页的空间是 16K, 并不是所有的空间都是用来存放数据的,会有一些固定的信息,如,页头,页尾,页码,校验码等等。

  3. 如果要具体到 InnoBD存储引擎。这个页就分为索引页和数据页,也就对应B+树的数据存储格式(索引页:非叶子节点  数据页:叶子节点) 

  4. 一旦B+树 非叶子节点索引长度固定(数据量固定) ,其叶子节点的数量也就是固定的。只是会根据叶子节点单行数据的大小,导致存储的数据行数不同而已。

  5. 此时假设索引长度和页的固定长度都固定 ,加起来为1K,单个B+树总的数据量不变

    约为:叶子节点数量 * (16-1) K

  6. 针对每一个索引,都会单独建立一个B+树。但只有主键索引的B+树叶子节点中保存的数据量,才对应整张单表的数据量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值