MySQL索引为什么用B+树不用B树
MySQL索引为什么用B+树不用B树1.B树只适合随机检索,B+树支持随机检索和顺序检索2.B+树空间利用率高,可以减少IO次数,磁盘读写代价更低。一般来说索引本身也很大,往往以索引文件的形式存储在磁盘上,这样索引查找过程就要产生磁盘IO消耗。B+树的内部节点只作为索引使用,其内部节点(非叶子节点)比B树更小,判断能容纳的节点中关键字更多,一次读取到的键更多。3.B+树查询效率更稳定,因为数据存放
·
MySQL索引为什么用B+树不用B树
1.B树只适合随机检索,B+树支持随机检索和顺序检索
2.B+树空间利用率高,可以减少IO次数,磁盘读写代价更低。
一般来说索引本身也很大,往往以索引文件的形式存储在磁盘上,这样索引查找过程就要产生磁盘IO消耗。B+树的内部节点只作为索引使用,其内部节点(非叶子节点)比B树更小,判断能容纳的节点中关键字更多,一次读取到的键更多。
3.B+树查询效率更稳定,因为数据存放在叶子节点。
4.B树在一定程度上也提高了磁盘IO性能,但没有解决遍历效率低下的问题。B+树的叶子节点都使用指针顺序连接在一起,只要遍历叶子节点就可以实现所有值。
5.增删文件时,B树需要重新调整树结构。B+树不需要调整树结构,因此B+树效率更高。
更多推荐
已为社区贡献1条内容
所有评论(0)