为什么索引结构默认使用B+树,而不是B-Tree,Hash哈希,二叉树,红黑树?

发布时间 2023-07-14 03:03:27作者: huigui_mint

Hash哈希,只适合等值查询,不适合范围查询。

一般二叉树,可能会特殊化为一个链表,相当于全表扫描。

红黑树,是一种特化的平衡二叉树,MySQL 数据量很大的时候,索引的体积也会很大,内存放不下的而从磁盘读取,树的层次太高的话,读取磁盘的次数就多了。

B-Tree,叶子节点和非叶子节点都保存数据,相同的数据量,B+树更矮壮,也是就说,相同的数据量,B+树数据结构,查询磁盘的次数会更少。