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

相关推荐
地平线开发者7 小时前
bevformer算法模型详细解读
算法
摇滚侠7 小时前
《SpringBoot 3:入门与应用实战》第 12 章 JDBC 与事务 使用 JdbcTemplate 阅读笔记 31
android·spring boot·笔记
torpidcat7 小时前
ruoyi-vue-pro 若依芋道 java springboot +mybatis 生日查询相关
java·vue.js·spring boot
liliangcsdn7 小时前
ICIR权重矩阵如何加权标准化为综合因子
算法
AC赳赳老秦7 小时前
文旅市场公开数据分析:基于 OpenClaw 采集景区客流与门票公示数据,生成区域文旅热度监测报告
java·c语言·python·php·symfony·deepseek·openclaw
金字塔頂の蝸牛7 小时前
商务日语口语全手册(一)
笔记·日语·语言·外语
SDWAN_Cheap8 小时前
SD-WAN智能选路技术的算法与实现机制
算法·php·sdwan
从零开始的嵌入式之旅8 小时前
day36
linux·c语言·经验分享·笔记·嵌入式硬件
不会就选b8 小时前
数据结构之树&&二叉树(二)
数据结构·算法
我命由我123458 小时前
Windows 操作系统 - 启用 D 盘虚拟内存
java·运维·服务器·windows·学习·java-ee·运维开发