面试题:mysql 一棵 B+ 树能存多少条数据?

本文探讨了MySQL中InnoDB存储引擎的B+树数据结构,解释了如何计算一棵B+树能存储的行数据数量。通过了解存储单元,如扇区、块和页的关系,以及B+树的检索过程,分析了B+树的高度对存储容量的影响。文章还提到了二级索引和聚簇索引的概念,并提供了实战案例来计算特定表的存储能力。
摘要由CSDN通过智能技术生成

mysql 的InnoDB存储引擎 一棵B+树可以存放多少行数据?

要搞清楚这个问题,首先要从InnoDB索引数据结构、数据组织方式说起。

我们都知道计算机有五大组成部分:控制器,运算器,存储器,输入设备,输出设备。

其中很重要的,也跟今天这个题目有关系的是存储器。

我们知道万事万物都有自己的单元体系,若干个小单体组成一个个大的个体。就像拼乐高一样,可以自由组合。所以说,如果能熟悉最小单元,就意味着我们抓住了事物的本事,再复杂的问题也会迎刃而解。

存储单元

存储器范围比较大,但是数据具体怎么存储,有自己的最小存储单元。

1、数据持久化存储磁盘里,磁盘的最小单元是扇区,一个扇区的大小是 512个字节

2、文件系统的最小单元是块,一个块的大小是 4K

3、InnoDB存储引擎,有自己的最小单元,称之为页,一个页的大小是16K

扇区、块、页这三者的存储关系?

InnoDB引擎

如果mysql部署在本地,通过命令行方式连接mysql,默认的端口 3306 ,然后输入密码即可进入

mysql -u root -p

查看InnoDB的页大小

show variables like 'innodb_page_size';

 

 

mysql数据库中,table表中的记录都是存储在页中,那么一页可以存多少行数据?假如一行数据的大小约为1K字节,那么按 16K / 1K = 16,可以计算出一页大约能存放16条数据。

mysql 的最小存储单元叫做“页”,这么多的页是如何构建一个庞大的数据组织,我们又如何知道数据存储在哪一个页中?

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值