B树和B+树的区别,为什么Mysql使用B+树

B树和B+树的区别,为什么Mysql使用B+树
B树的特点:
1.节点排序
2.一个节点了可以存多个元素,多个元素也排序了
B+树的特点:
1.拥有B树的特点
2.叶子节点之间有指针
3.非叶子节点上的元素在叶子节点上都冗余了,也就是叶子节点中存储了所有的元素,并且排好顺序


Mysql索引使用的是B+树,因为索引是用来加快查询的,而B+树通过对数据进行排序所以是可以提高查询速度的,然后通过一个节点中可以存储多个元素,从而可以使得B+树的高度不会太高,在Mysql中一个Innodb页就是一个B+树节点,一个nnodb页默认16kb,所以一般情况下一颗两层的B+树可以存2000万行左右的数据,然后通过利用B+树叶子节点存储了所有数据并且进行了排序,并且叶子节点之间有指针,可以很好的支持全表扫描,范围查找等SQL语句。

Mysql锁有哪些,如何理解
按锁粒度分类:
1.行锁:锁某行数据,锁粒度最小,并发度高

2.表锁:锁整张表,锁粒度最大,并发度低

3.间隙锁:锁的是一个区间
 

猜你喜欢

转载自blog.csdn.net/weixin_53031149/article/details/127523765