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

相关推荐
Wang's Blog8 小时前
Java 项目实战: 交友项目 - 小视频模块实战:访客记录、FastDFS 存储与 SpringCache 缓存
java·缓存·交友
tianxuanjg8 小时前
无人机科研轻量化结构件采购指南|高校实验室选型避坑:轻量化与结构强度如何兼顾
人工智能·经验分享·机器人·无人机·制造
香蕉大香蕉(06敬畏市场)8 小时前
MySQL 单点详解(09)
java·数据库·mysql·面试·八股·大厂实习
xxwl5858 小时前
Nginx 基础学习笔记
笔记·学习·nginx
Star(up up up)9 小时前
Docker系列---Dockerfile镜像文件
人工智能·经验分享·学习·程序人生·docker·容器·github
January12079 小时前
【AI方法笔记】2026-11-02:模型流式吐 JSON 时,前端会遇到四种崩法
前端·人工智能·笔记·json
CC数分9 小时前
统计学基础|先把问题问对:数据分析的六大类型
大数据·人工智能·算法
吹什么轩9 小时前
constexpr 完全指南:从 const 的两种含义,到编译期计算的四次演进
java·前端·javascript
她的男孩9 小时前
租户 A 的验证码,却用了租户 B 的 AccessKey:Forge Admin 修跨租户短信串发
java·spring boot·saas
LabVIEW开发9 小时前
LabVIEW 局部变量与数据流:这道 CLAD 题为什么答案是 Undefined
java·开发语言·labview