MySql中索引的一些知识
作者:互联网
概述
数据库的索引常见的有B树索引、B+树索引、哈希索引,接下来我们队B树索引和B+树索引做一些分析
B树索引
BTree结构
BTree又叫做多路平衡搜索树,一棵M叉BTree特性如下:
- 树中每个节点最多包含m个孩子
- 除根节点与叶子结点外,每个节点至少有[ceil(m/2)]个孩子
- 若根节点不是叶子结点,则至少你有两个孩子
- 所有的叶子结点都在同一层
- 每个非叶子节点由n个key和n+1个指针组成,其中[ceil(m/2)-1]<=n<=m-1
以5叉BTree为例,key的数量:公式推导[ceil(m/2)-1]<=n<=m-1,所以2<=n<=4,当n>4时,中间节点向上分裂到父节点,两边节点也分裂成两个节点。
B+Tree结构
B+Tree索引是BTree索引的变种,B+Tree与BTree的区别为:
- n叉B+Tree最多包含n个key,而BTree最多包含n-1个key
- B+Tree的叶子结点保存所有的key信息,依据key大小顺序排列
- 所有的非叶子节点都可以看做是key的索引部分。
标签:结点,知识,Tree,索引,key,MySql,BTree,节点 来源: https://www.cnblogs.com/hello-liu/p/16201298.html