ECS服务体验报告

我的博客:http://8.130.163.202:8090/
我在学习数据库的积累:

B树和B+树区别?

B树是内节点存储key和data,叶子节点为null。

B+树是内节点不存储data,只存储key,叶子节点放data,叶子节点还有一个顺序访问的指针,可以访问相邻叶子节点。

为什么选B+树作为数据库底层?

因为B+树内节点不存data,这样可以存更多key,整颗树比同数量级的B树,更矮胖一些,而树的高度越小,磁盘I/O次数会更少,查找速度相对更快。

MyISAM和Innodb的比较和介绍

MyISAM中,data存数据地址,索引不是数据,单独放在.MYI文件,数据放在.MYD

Innodb中,data存数据本身,索引也算数据,两者都放在.IDB文件

事务安全 锁粒度 全文索引 难易程度及效率 跨平台 使用场景
MyISAM 0 1 容易,效率高 保存为文件,方便 大量select
Innodb 1 表,行 0 较难,效率较低 不太方便 大量insert和update

回表查询

t(id PK, name KEY, sex, flag);

ECS服务体验报告

只查询name和id,那么在secondary tree中直接返回了,不会触发回表。因为其他字段不查

但查更多比如name, sex和id字段,因为secondary tree中没有,所以要拿到主键值id,在索引树中查出对应字段。

简称,基于非主键索引的查询需要多扫描一棵索引树。

上一篇:【MATLAB】进阶绘图 ( Polar Chart 极坐标图 | polar 函数 )


下一篇:Java邮件群发(web版)