三层B+树可以存储1170 x 1170 x 16 = 21902400条数据。
这里我们用最坏的情况来假设一行记录大小为1kb,那么,一个16kb的页就可以存储16行数据。 接下来,我们先画一个只要两层高的B+树结构图。 假设第一层根节点存在以下情况:索引1对应页指针地址10,索引5对应页指针地址30,索引8对应页指针地址50。 第二层节点作为叶子节点,存放的是大小为16kb的页数据,页数据里每一行...
因此,三层 B+ 树能存储的总数据量为: 数据行总数 = 1170 × 1170 × 16 = 18,974,400 行。 假设更大的行数据 如果每行数据大小减小,比如每行仅占 0.5KB,则一个叶子节点可以存储 32 行数据。 重新计算后,三层 B+ 树最多可以存储: 数据行总数 = 1170 × 1170 × 32 = 37,948,800 行。 如果每...
所以可以算出一个高度为3的B+树可以存放:1170*1170*16=21902400条这样的记录。所以在InnoDB中B+树高度一般为1-3层,它就能满足千万级的数据存储。在查找数据时一次页的查找代表一次IO,所以通过主键索引查询通常只需要1-3次IO操作即可查找到数据。 面试常见问题: 1、一个B+树能存储多大数据量级? 一般3层的B+...
2023Java面试题300集:百度MySQL面试题之一个B+树中大概能存放多少条索引记录, 视频播放量 2373、弹幕量 1、点赞数 34、投硬币枚数 10、收藏人数 119、转发人数 8, 视频作者 java语言, 作者简介 面试资料获取+小助手V:MXY50222,相关视频:百度MySQL面试题之B树和B+树的区
在MySQL的InnoDB存储引擎中,B+树用于实现聚簇索引和二级索引。为了计算4层B+树最多能存储多少数据,我们需要考虑InnoDB的页大小、指针大小、主键大小以及每行数据的大小。 1. InnoDB页大小 InnoDB页的大小默认为16KB(16384字节)。 2. 指针和主键大小 指针大小:在InnoDB中,指针通常为6字节。 主键大小:假设主键为big...
这里我们假设一行记录的数据大小为1k左右 总结一下: 如果B+树高度为2的话,那么这棵B+树的存放总记录数为:根节点指针数*单个叶子节点记录行数 = 16kb/14 * 16 大约 1.8w+ 数据。 如果B+树高度为3的话,那么这棵B+树的存放总记录数为:根节点指针数*单个叶子节点记录行数 = 16kb/14 * 16kb/14 * 16...
要介绍B+树索引,就不得不提二叉查找树,平衡二叉树和B树这三种数据结构。B+树就是从他们仨演化来的。二叉查找树 首先,让我们先看一张图 从图中可以看到,我们为user表(用户信息表)建立了一个二叉查找树的索引。图中的圆为二叉查找树的节点,节点中存储了键(key)和数据(data)。键对应user表中的id,数据...