Mysql——》一棵B+树可以存放多少行数据

这篇具有很好参考价值的文章主要介绍了Mysql——》一棵B+树可以存放多少行数据。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

推荐链接:
    总结——》【Java】
    总结——》【Mysql】
    总结——》【Redis】
    总结——》【Kafka】
    总结——》【Spring】
    总结——》【SpringBoot】
    总结——》【MyBatis、MyBatis-Plus】

存储数据的位置 最小存储单元 备注
计算机磁盘 扇区 = 512字节
文件系统(XFS/EXT4) 块 = 4k
InnoDB 存储引擎 页 = 16k 后缀为 ibd 文件大小始终为16384(16k)的整数倍

数据表中的数据都是存储在页中的。
叶子节点 :存放数据
非叶子节点 :存放的是索引信息和下一层节点的指针信息

1、一个页中能存储多少行数据呢?

Q:一个页中能存储多少行数据呢?
A:假设一行数据的大小是 1k,那么一个页可以存放 16 行这样的数据。

2、一个非叶子节点能存储多少指针?

Q:一个非叶子节点能存储多少指针?
A:假设主键 ID 为 常用的bigint 类型,长度为 8 字节
指针大小在 InnoDB 源码中设置为 6 字节
这样一共 14 字节,一页有16384字节,所以能存放16384/14=1170个指针

3、一棵高度为2的B+树,能存放多少记录?

Q:一棵高度为2的B+树,能存放多少记录?
A:一个根节点 = 一个非叶子节点 = 1170个指针
一个叶子节点 = 16行数据
所以一共1170 * 16 = 18720

3、一棵高度为3的B+树,能存放多少记录?

A:一棵高度为3的B+树,能存放多少记录?
A:1170 * 1170 * 16=21902400
在 InnoDB 中 B+ 树高度一般为 1-3 层,就能满足千万级的数据存储。

Mysql——》一棵B+树可以存放多少行数据文章来源地址https://www.toymoban.com/news/detail-420589.html

到了这里,关于Mysql——》一棵B+树可以存放多少行数据的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 你的mysql到底能存多少数据呢?

    参考借鉴文章 我说MySQL每张表最好不超过2000万数据,面试官让我回去等通知? 这里自己在总结一下,原因是相关知识欠缺,看别人的文章研究很久才弄明白,所以这里记录一些心得。 作者:阿杆 链接:https://juejin.cn/post/7165689453124517896 来源:稀土掘金 著作权归作者所有。商

    2024年02月01日
    浏览(40)
  • MySQL—MySQL的NULL值是怎么存放的

     1、MySQL数据存放在哪个文件?         创建一个数据库会产生三种格式的文件,分别是.opt格式、.frm格式、.ibd格式。         opt格式 :用来存储当前数据库的默认字符集和字符校验规则。         frm格式 :该文件是用来保存每个表的元数据信息的,主要包含表结构定义。

    2024年02月10日
    浏览(38)
  • 如何查看路由器上面链接了多少用户

    如何查看路由器上面链接了多少用户? 目前主要有两种方法,一种是使用相关软件,如360防蹭网工具,即可查看到连接到路由器中的上网用户,如下图: 360防蹭网工具查看连接路由器用户 另外一种方法是,我们可以进入到路由器里边查看,当前连接到路由器的连接用户情况

    2024年02月06日
    浏览(39)
  • 天天使用MySQL,你知道MySQL数据库能抗多少压力吗?附(真实案例)

            今天给大家分享一个知识点,是关于MySQL数据库架构演进的,因为很多兄弟天天基于mysql做系统开发,但是写的系统都是那种 低并发压力、小数据量 的,所以哪怕上线了也就是这么正常跑着而已,但是你知道你连接的这个MySQL数据库他到底能抗多大并发压力吗?如

    2024年02月09日
    浏览(37)
  • MYSQL单表数据量达到多少时性能会严重下降的问题探讨!

    不知从什么时候开始,有着MySQL单表数据量超过2000万性能急剧下降的说法。 在中国互联网技术圈流传着这么一个说法:MySQL 单表数据量大于 2000 万行,性能会明显下降。事实上,这个传闻据说最早起源于百度。具体情况大概是这样的,当年的 DBA 测试 MySQL性能时发现,当单表

    2024年02月09日
    浏览(36)
  • 「AI知多少」第三期推荐《AI 3.0》

    《AI 3.0》 人工智能现在正深刻地影响着我们的生产与生活,甚至关系到人类未来的前途命运,但究竟什么是人工智能?人工智能背后的原理是什么?从问世到演化至今,人工智能经历了怎样的历史变迁?当下人工智能的能力边界在哪里?人工智能与人类智能的差异是什么?未

    2024年02月06日
    浏览(30)
  • SQL Server 创建链接服务器 链接mysql 进行数据同步

    一个项目的产品迭代,因为迭代过程中两套系统同时使用,两套系统设计使用的数据库不同,从Sqlserver改到mysql了,所以需要将sqlserver的业务数据定时同步到mysql中。 当问题产生了,作为一个合格的码农,第一时间就是想着做一个程序实现数据同步,但是处于自身不叫懒惰,

    2024年02月14日
    浏览(40)
  • python链接数据库mysql

    前提工作: 1、先在win10上安装好mysql,教程可以参考: 【精选】windows10上安装mysql(详细步骤)_win10安装mysql-CSDN博客 2、在PyCharm上安装对应的pymysql库: 可以用pip安装:python -m pip install pymysql 都进行好之后,直接上代码,只要链接成功,就可以随心所欲的操作数据库了: 补

    2024年02月07日
    浏览(38)
  • Unity链接MySql数据库

    1. MySql.Data插件 Visual Studio中下载 打开Visual Studio_项目_管理NuGet程序包 在 浏览 中搜索 MySql.Data 并下载 2.MySql官网下载插件 前提已经安装mysql,然后到官网下载以下三个东西(最好不要使用最新版本) MySQL Connector Net Connector ODBC 8.0 MySQL for VIsaul Studio 下载完直接 双击 (傻瓜式)

    2024年02月03日
    浏览(44)
  • 125、SpringBoot可以同时处理多少请求?

    我们都知道,SpringBoot默认的内嵌容器是Tomcat,也就是我们的程序实际上是运行在Tomcat里的。所以与其说SpringBoot可以处理多少请求,到不如说Tomcat可以处理多少请求。 关于Tomcat的默认配置,都在spring-configuration-metadata.json文件中,对应的配置类则是org.springframework.boot.autoconfig

    2024年02月13日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包