Mysql——单表最多数据量多少需要分表
目录
-
- 一、MySql单表最多数据量多少需要分表
-
- 1.1、阿里开发公约
- 1.2、一个三层的B+树,它最多可以存储多少数据量
- 1.3、示例
-
- 1.3.1、示例表中一行的数据占多少字节数
- 1.3.2、示例表中一页里面最多可以存多少条记录
- 1.3.3、按示例表计算,一个三层的B+树,可以放多少条100字节的数据
- List item
一、MySql单表最多数据量多少需要分表
1.1、阿里开发公约
- 推荐单表行数超过500万或者单表容量超过2GB,才推荐进行分库分表。
- 说明:如果预计三年后的数据量根本达不到这个级别,请不要在创建表时就分库分表。
1.2、一个三层的B+树,它最多可以存储多少数据量
-
因为你单纯抛开容量只谈行数的话,肯定是不对的。一个三层的B+树,它最多可以存储多少数据量呢?
-
首先,我们要知道一颗B+树,它是由一个一个的磁盘页所组成的,每一页的大小可以通过sql语句进行查询,默认是16KB
show GLOBAL STATUS like 'innodb_page_size'
-
其次,每一页它的结构里面有页头和页尾等一些结构,真正的存储数据的只有中间的这一部分,所以我们真正需要获取一页当中有效的数据空间,还需要减掉页头和叶尾这一部分的空间,大约可以减掉200左右的字节。在这里插入代码片
-
页大