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

相关推荐
豆奶特浓61 天前
Java面试模拟:当搞笑程序员谢飞机遇到电商秒杀与AIGC客服场景
java·spring boot·微服务·面试·aigc·高并发·电商
明洞日记1 天前
【设计模式手册013】命令模式 - 请求封装的优雅之道
java·设计模式·命令模式
方白羽1 天前
Android多层嵌套RecyclerView滚动
android·java·kotlin
鳄鱼儿1 天前
密码算法的OID查阅
算法
卡提西亚1 天前
C++笔记-34-map/multimap容器
开发语言·c++·笔记
海边夕阳20061 天前
【每天一个AI小知识】:什么是循环神经网络?
人工智能·经验分享·rnn·深度学习·神经网络·机器学习
lxh01131 天前
螺旋数组题解
前端·算法·js
uup1 天前
Java 中 ArrayList 线程安全问题
java
uup1 天前
Java 中日期格式化的潜在问题
java
老华带你飞1 天前
海产品销售系统|海鲜商城购物|基于SprinBoot+vue的海鲜商城系统(源码+数据库+文档)
java·前端·数据库·vue.js·论文·毕设·海鲜商城购物系统