在MySQL中,B+树是一种用于索引的数据结构,其特点包括所有记录节点都是按照键值大小顺序存放在同一层的叶子节点上,且非叶子节点仅存储键值信息用于指向对应的子节点。对于MySQL中的InnoDB存储引擎,其默认页面大小为16KB。现在,我们来计算三层填满的B+树可以存储多少数据。 1. B+树结构特点 叶子节点:存储实际的记录数据...
这里我们用最坏的情况来假设一行记录大小为1kb,那么,一个16kb的页就可以存储16行数据。 接下来,我们先画一个只要两层高的B+树结构图。 假设第一层根节点存在以下情况:索引1对应页指针地址10,索引5对应页指针地址30,索引8对应页指针地址50。 第二层节点作为叶子节点,存放的是大小为16kb的页数据,页数据里每一行...
所以,两层的B+树可以存储:16*1638=26208条数据;三层的B+树可以存储:16*1638*1638=42928704条数据。
一个三层的B+树最多可以放多少数据 #java #Java面试 #MySQL #Java程序员 #面试 - Java小叮当于20240721发布在抖音,已经收获了19.2万个喜欢,来抖音,记录美好生活!
科技 计算机技术 B+树三级能存储多少数据 B+树的时间复杂度是多少 索引 MySQL B+树 平衡二叉树物联网大联盟-Gavin加文 发消息 情怀团队,不为盈利,没有KPI,为所有目前或是即将处于困境的IT工作者提供技术支撑,问题辅导,永久免费讲课。 优质知识推荐 (2/3) 自动连播 257播放 简介 订阅合集 优质up主阅读...
每个节点都存储key和data。 B+树 只有叶子节点存储data,叶子节点包含了这棵树的所有键值[key,data],叶子节点不存储指针。 后来,在B+树上增加了顺序访问指针,也就是每个叶子节点增加一个指向相邻叶子节点的指针,这样一棵树成了数据库系统实现索引的首选数据结构。
假设一行数据占用1kb的空间大小,然而实际上,除去字段很多的宽表外,其实很多简单的表行记录都远达不到1kb空间占比。这里我们用最坏的情况来假设一行记录大小为1kb,那么,一个16kb的页就可以存储16行数据。 接下来,我们先画一个只要两层高的B+树结构图。
假设一行数据占用1kb的空间大小,然而实际上,除去字段很多的宽表外,其实很多简单的表行记录都远达不到1kb空间占比。这里我们用最坏的情况来假设一行记录大小为1kb,那么,一个16kb的页就可以存储16行数据。 接下来,我们先画一个只要两层高的B+树结构图。
假设一行数据占用1kb的空间大小,然而实际上,除去字段很多的宽表外,其实很多简单的表行记录都远达不到1kb空间占比。这里我们用最坏的情况来假设一行记录大小为1kb,那么,一个16kb的页就可以存储16行数据。 接下来,我们先画一个只要两层高的B+树结构图。