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

相关推荐
玖釉-4 小时前
C++ 中的循环语句详解:while、do...while、for、嵌套循环与循环控制
开发语言·c++·算法
问心无愧05134 小时前
ctf show web入门156
笔记
不做无法实现的梦~4 小时前
运动控制系统复习一览-----常考题目总结版本
算法
二宝哥4 小时前
离线安装maven
java·数据库·maven
小短腿的代码世界4 小时前
信号路由风暴:Qt算法交易系统的高频信号分发架构
qt·算法·架构
阿文的代码库5 小时前
一文读懂GROUP BY 1,2 VS GROUP BY column_1, column_2 的区别
算法
咸甜适中5 小时前
rust语言学习笔记Trait(八)Iterator(迭代器)
笔记·学习·rust
日月云棠5 小时前
6 高级配置:Spring Boot整合、泛化调用与配置指南
java·后端
云烟成雨TD5 小时前
Spring AI Alibaba 1.x 系列【58】Spring AI Alibaba Builtin Nodes 模块介绍
java·人工智能·spring
欧米欧5 小时前
C++进阶数据结构之搜索二叉树
开发语言·数据结构·c++