MySql底层数据结构详解

索引: 索引是帮助SQL高效获取数据排好序的数据结构Mysql 底层索引: B+ Tree 或者 hashB+ Tree 数据结构示例图:如下图3层数据的 B+ Tree,数据从左到右是依次存储,第一二层为非叶子节点表示索引,存储的索引越多则当前 B+ Tree的层级越少;层级越少则表示更少的 I/O操作;第三层是存储数据的叶子节点,假如查找数据 30,实际只有两步,第一步时会把所有索引加到内存中,找到30在索引 20-49之间,则索引之间空白实际是它叶子节点的指针,通过指针直接就定位到 20到30,
摘要由CSDN通过智能技术生成

索引: 索引是帮助SQL高效获取数据排好序数据结构

Mysql 底层索引实现: B+ Tree 或者 hash

B+ 树 数据结构示例图:

如下图3层数据的 B+ 树,数据从左到右是依次存储,第一二层为非叶子节点表示索引,存储的索引越多则当前 B+ 树的层级越少;层级越少则表示更少的 I/O操作,减少I/O开销;第三层是存储数据的叶子节点,假如查找数据 30,实际只有两步,第一步时会把所有索引加到内存中,二分查到到30在索引 20-49之间,则索引之间空白实际是它叶子节点的指针,通过指针直接就定位到 20到30,那么就找到数据30;
在这里插入图片描述

主键索引

存储引擎索引(注意:存储引擎是修饰表的)

MylSAM存储引擎索引实现,MylSAM索引文件和数据文件是分离的(非聚集),如下:.frm是存放表的结构,.MYI是存放表的索引文件, .MYD是存放表的数据文件;根据索引查找时,先到.MYI文件找到对应的索引,再根据索引到 .MYD中找到对应的数据;

在这里插入图片描述
InnoDB存储引擎索引实现,InnoDB索引文件和数据文件是同一个文件中的(聚

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值