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

相关推荐
凤凰院凶涛QAQ9 小时前
《Java版数据结构 & 集合类剖析》集合框架的封装设计与顺序表:“从 Iterable 到 ArrayList:集合框架的‘职业树“
java·开发语言·数据结构
中屹指纹浏览器9 小时前
2026指纹浏览器行为指纹对抗技术详解:从算法识别到真人模拟全方案
经验分享·笔记
吴可可1239 小时前
Win7上开发CAD2004自定义实体全解析
c++·算法
孟华苏9 小时前
怎么快速排查内存泄漏问题
java·开发语言·python
YXXY3139 小时前
二叉树中的深搜算法介绍
算法
zz345729811310 小时前
C语言中字符串常量存储位置
c语言·开发语言·算法·青少年编程
noipp10 小时前
推荐题目:洛谷 P16510 [GKS 2015 #C] gRanks
java·c语言·开发语言·c++·python·算法
flyinmind10 小时前
Java环境与Android环境中使用QuickJS
java·开发语言·javascript·quickjs
不吃鱼的羊10 小时前
DaVinci Developer自动连接
java·开发语言
farerboy10 小时前
15-Java while 和 do...while循环
java·后端