当前位置: 首页 > news >正文

怎么获得一个免费的域名北京优化网站公司

怎么获得一个免费的域名,北京优化网站公司,店面怎么做位置定位,旅游网页设计成品免费下载为什么MySQL底层数据结构选择B树?(而不是B树等其他数据结构) B树非叶子节点,不存放数据记录,仅存放指针与关键字,所以一个B树非叶子节点可以存放更多子节点信息,有利于降低树高度,从…

为什么MySQL底层数据结构选择B+树?(而不是B树等其他数据结构)

B+树非叶子节点,不存放数据记录,仅存放指针与关键字,所以一个B+树非叶子节点可以存放更多子节点信息,有利于降低树高度,从而减少搜索IO次数。
相反,B树的叶子节点与非叶子节点数据结构一致(存放 数据记录+子节点指针 + 关键字),导致,B树非叶子节点可存放子节点指针空间减少,树高度增高,IO次数增多,性能降低。故,不选择。

为什么树越高,磁盘IO次数越多?

InnoDB 存储引擎存在自身文件管理机制,其最小存储单位为页(Page), 大小为 16KB。页,即为B+树中节点存储结构。所以,B+ 树越高,层级节点搜索次数越多,对应的磁盘IO次数随之增多,引擎性能随之降低。

扩展:
计算机中磁盘存储数据最小单元是扇区,一个扇区的大小是 512字节 。文件系统(如XFS/EXT4)最小单元是块,一个块的大小是 4KB。

【经典问题】

一颗B+树一般可以存放多少条数据记录?

  1. InnoDB 页的默认大小 16KB;
  2. InnoDB 主键ID bigint 类型大小为 8 Bytes;
  3. InnoDB 中指针大小为 6 Bytes;
  4. 互联网业务数据记录大小通常为 1KB;
  5. 叶子节点只放置数据记录数量:16KB / 1KB = 16;

开始计算:
假设 Mysql B+ 树高为 3 层。16 KB = 16384 Bytes
一个非叶子节点可包含的指向子节点的指针数量:16384 / (8 + 6) = 1170
2 层树高: 1170 * 16; (1170: 指第一层总共有1170子节点指针,说明第二层存在1170个叶子节点; 16: 指每一个叶子节点上可以放置 16 条数据记录。所以,2层树高的B+树,可以存放 1170 * 16 条数据记录)。
3 层树高:1170 * 1170 * 16; (与上同理。新增了一层非叶子节点,则需要多乘以一层的子节点数量,这里就已经满足千万级别数据量的数据库)。

http://www.hkea.cn/news/816780/

相关文章:

  • 苏州网站建设网站seo优化的方法
  • 设计网装修seo顾问服
  • 网站ip拦截免费网站搭建平台
  • 深圳企业网站建设公司快速申请免费个人网站
  • 唯品会 一家专门做特卖的网站沈阳seo按天计费
  • 聊城手机网站建设郑州seo服务技术
  • 个人定做衣服店江门seo推广公司
  • 网站开发与网站建设山东济南seo整站优化费用
  • 香港疫情最新消息今天深圳seo教程
  • 维护一个网站难吗免费发布外链
  • 南安市网站建设成都今天重大新闻事件
  • 网站后台补丁如何做软文有哪几种类型
  • 网站建设的费用包括哪些内容资讯门户类网站有哪些
  • 一站式服务图片制作网页的基本步骤
  • 个人网站建设网站网络网站推广
  • asp做的药店网站模板北京百度快照推广公司
  • 网站建设泉州效率网络seo的优化策略有哪些
  • 页网站无锡网站制作推广
  • 一流的龙岗网站建设目前最靠谱的推广平台
  • 企业营销型网站费用短视频推广引流
  • 化妆品可做的团购网站有哪些seo研究中心南宁线下
  • 网站空间域名是什么做电商必备的几个软件
  • 软件公司运营是做什么的seo公司运营
  • 专业云南做网站福州短视频seo服务
  • 网站开发技术期中试题电商培训机构排名
  • 网站设计连接数据库怎么做如何进行百度推广
  • 日本网站图片做淘宝代购网络营销促销方案
  • 网站开发导航栏网站制作的费用
  • 盐城网站设计网站流量统计工具
  • 网站上如何做相关推荐郑州建网站的公司