尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
《为什么 MySQL 三层 B+ 树能存两千万条数据?》
为什么 MySQL 一张表几千万行按主键查一条数据只要几毫秒答案就在 MySQL 的索引结构里——B 树。B 树长什么样这是一张 B 树的示意图它是一个扇出为 3 的简化版本。与二叉树不同B 树可以有非常多的分支。树里包含三种节点根节点、非叶子节点和叶子节点。**只有叶子节点存储数据**根节点和非叶子节点都是索引层查询时从根节点开始一步步向下索引到叶子节点。叶子节点之间用指针串成链表——这让范围查询非常高效找到起点后顺着链表一路扫过去就行。严格说上面说的是聚簇索引二级索引的叶子节点存的是主键值这个留到下一篇写。图里是扇出 3 的简化示意真实 InnoDB 的扇出约 1170看下一段。为什么三层能存千万数据因为一个节点不是一条数据而是一个 16KB 的磁盘页。一个索引项 主键 8 字节 指针 6 字节 ≈ 14 字节一页能放下 16KB ÷ 14B ≈ 1170 个索引项。三层结构就是- 根页 1170 个指针 → 1170 个中间页- 每个中间页再分 1170 个指针 → 1170 × 1170 ≈ 137 万个叶子页- 假设一行数据约 1KB一个叶子页能存 16 行137 万 × 16 ≈ **2190 万行**所以三层 B 树能撑起千万级数据。行更大就长到四层量级一样。为什么比 B 树适合磁盘磁盘 IO 次数 树高一次 IO 读一页。B 树非叶子节点只存键和指针、不存数据同样 16KB 一页能装更多索引项——同样数据量下树更矮、IO 更少。而且数据全在叶子、叶子用链表串起来范围查询顺着链表一路扫就行B 树的数据散布在所有节点里范围扫描要反复上下树IO 多得多。所以不是 B 树不能范围查而是查起来慢——B 树在磁盘场景全面占优。总结回到开头的问题按主键查一条数据最多三次磁盘 IO根页 → 中间页 → 叶子页三次 IO 就是毫秒级。实际中根页常驻内存通常只要 1-2 次 IO。面试口径一句话**B 树高度低、叶子链表串联支持范围查询三层能存千万行**。
RELATED

相关推荐

当AI手机普及之后,我们的生活会变成什么样

当AI手机普及之后,我们的生活会变成什么样

计划发布:2026年10月25日。资料核验截至2026年10月17日。产品能力按官方披露介绍,不冒充实测;生活与商业变化为有条件的情景分析,不是已经发生的结果。 AI手机普及之后,我们得到的可能不只是一部更好用的手机&#xf…

📅 2026/10/26 18:13:57
天津滨海产线实测:C#对接YOLO26焊点检测,误判率压到0.1%以下的工程实践

天津滨海产线实测:C#对接YOLO26焊点检测,误判率压到0.1%以下的工程实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📅 2026/10/26 18:13:57
矩阵键盘逻辑讲解

矩阵键盘逻辑讲解

矩阵键盘逻辑讲解 想象一个4行4列的网格,网格16个交点,每个交点放一个按键。 横向的线叫行线(4根)纵向的线叫列线(4根) 按键就架在行线和列线交叉点:按下按键 把这根行线和列线接通。 只用 448…

📅 2026/10/26 18:13:56
MORE NEWS

更多资讯

📰

给AI对话加跨会话记忆:从语义提取到向量召回的设计与实践

做AI辅助开发的朋友应该都有同感:同一个项目聊到第三周,新开一个会话,AI完全不记得你两周前让它梳理的那套模块边界,也不记得你已经拍板过的技术选型。你只能重新粘贴一遍背景,重新交代一遍约束,时间全耗在…

📰

智慧城市三维可视化多端协同技术解析

1. 项目背景与核心挑战 在智慧城市建设的浪潮中,"城市安全大脑"作为中枢神经系统,承担着实时监控、预警分析和应急指挥的重任。而指挥大屏则是这套系统的"眼睛"——决策者通过它直观掌握城市运行态势。但传统方案面临一个尴尬的技术…

📰

一氧化碳报警器法规解析与安装指南

1. 项目概述:一氧化碳报警器的强制安装背景 去年冬天,我邻居家发生的一起事故让我至今心有余悸。半夜两点接到电话说整栋楼在疏散,原因是某户燃气热水器泄漏导致一氧化碳浓度超标。当时消防员破门而入时,屋内两位老人已经出现中毒…

📰

claude-mem:为Claude CLI注入长期记忆的开源工具

你有没有过这种体验:用官方终端版 Claude 干活,今天聊完的项目背景、技术选型、代码规范,明天新开会话它全忘了,你又得把同样的话重复一遍。这不是你操作有问题,而是这类对话工具天然的“无状态”特性——每次会话都是…

📰

Web开发中的随机图片访问技术实现与优化

1. 项目概述"访问随机图片地址"这个看似简单的需求,实际上涉及到了网络请求、资源管理、性能优化等多个技术领域。作为一名长期从事Web开发的工程师,我发现很多初级开发者容易低估这类功能的实现复杂度。本文将从一个实际项目经验出发&#xf…

📰

agency-agents:面向复杂业务的多智能体协同决策架构

1. 项目概述:这不是一个“代理”,而是一套协同决策系统“agency-agents”这个词组乍看像拼写错误,或是某个被截断的英文短语,但放在当前技术演进语境下,它其实指向一个正在快速成型的新范式——具备自主目标感知、环境…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬