面试题:反推B+树高度

一个表5000w数据,一个数据行大小为1k,主键为long类型数据,假设指针大小为8B,页大小为16K,求B+树的高度?

B+树的非叶子节点存储key和指针,叶子节点存储数据,对应表中的某些行。

叶子节点存储的行数:16k/1k=2^4

需要叶子节点数:5000w/2^4

一个索引页能存储的索引个数:16k/(8+8)=2^10

树的高度:(2^10)^(h-1)=5000w/2^4

得出h≈3.15

千万级别的数据,b+树的高度也能维持3~5的高度,io次数也非常小。

相关推荐
雨落在了我的手上4 分钟前
初识java(七):Java调试案例讲解
java·intellij-idea·集成开发环境调试功能
Volunteer Technology9 分钟前
Spring AI MCP 案例-WebFlux SSE传输模式 (九)
java·数据库·人工智能·spring
rabbit_pro10 分钟前
SpringBoot3集成Langchain4j使用Ollama
java·开发语言
计算机安禾22 分钟前
【c++面向对象编程】第26篇:对象的内存模型:成员变量与成员函数的存储分离
开发语言·c++·算法
贩卖黄昏的熊30 分钟前
陕西省ICPC省赛总结
算法
-To be number.wan31 分钟前
为什么关系数据库主要采用b+树、散列表来构建索引
数据结构·b树·散列表·数据库系统
解决问题no解决代码问题33 分钟前
JAVA GC
java·开发语言·jvm
jieyucx35 分钟前
Go 语言进阶:构造函数、父子结构体与组合复用详解
服务器·算法·golang·继承·结构体·构造函数
澈20736 分钟前
滑动窗口算法:双指针高效解题秘籍
数据结构·c++·算法
天行健王春城老师1 小时前
制造业现场管理避坑,精益+6S实操方案(适配2026迭代)
经验分享