面试题:反推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次数也非常小。

相关推荐
橘颂TA7 分钟前
【剑斩OFFER】哈希表简介
数据结构·算法·散列表
零度@7 分钟前
Java-Redis 缓存「从入门到黑科技」2026 版
java·redis·缓存
zzhongcy8 分钟前
多级缓存对比(Caffeine + Redis),以及缓存不一致问题的解决
java
小尧嵌入式8 分钟前
c++红黑树及B树B+树
开发语言·数据结构·c++·windows·b树·算法·排序算法
optimistic_chen9 分钟前
【Redis 系列】常用数据结构---ZSET类型
数据结构·数据库·redis·xshell·zset·redis命令
带刺的坐椅10 分钟前
灵动如画 —— 初识 Solon Graph Fluent API 编排
java·ai·agent·solon·flow·langgraph
cike_y11 分钟前
Spring整合Mybatis:dao层
java·开发语言·数据库·spring·mybatis
小股虫12 分钟前
缓存攻防战:在增长中台设计一套高效且安全的缓存体系
java·分布式·安全·缓存·微服务·架构
小蒜学长13 分钟前
足球联赛管理系统(代码+数据库+LW)
java·数据库·spring boot·后端
tobias.b13 分钟前
408真题解析-2009-10-数据结构-排序
数据结构·算法·排序算法·408考研·408真题·真题解析