MySQL索引结构

113 阅读1分钟

1、为什么使用B+树不用别的结构?

Hash索引 以hash形式存储,查条的时候非常快,不支持范围查找

二叉树 最坏时出现线性结构,增加IO次数

平衡二叉树(AVL):

层高比较高,增加IO次数

AVL定义: 根结点左、右子树高度差绝对值不超过1 任一结点的左、右子树均为AVL树

B树

B树不管叶子节点还是非叶子节点,都会保存数据,这样导致在非叶子节点中能保存的指针数量变少,指针少的情况下 要保存大量数据,只能增加树的高度,导致IO操作变多,查询性能变低

B+树

多路查找树可以降低树的高度,可以分批记载到内存,数据都在叶子节点,访问范围数据时不会跨层

参考文档:www.liuzk.com/410.html

2、事务的四个特征ACID是通过什么保证的?

3、Explain 各参数意义?