发布网友 发布时间:2022-04-24 16:50
共2个回答
热心网友 时间:2022-04-07 21:21
B+ 树是对 B 树的一个小升级。大部分数据库的索引都是基于 B+ 树存储的。MySQL 的 MyISAM 和 InnoDB 引擎的索引都是基于 B+ 树存储。
B+ 树最大的几个特点:
1. 非叶子节点只保留 KEY,放弃 DATA;
2. KEY 和 DATA一起,在叶子节点,并且保存为一个有序链表(正序,反序,或者双向);
3. B+ 树的查找与 B 树不同,当某个结点的 KEY 与所查的 KEY 相等时,并不停止查找,而是沿着这个 KEY 左边的指针向下,一直查到该关键字所在的叶子结点为止。
热心网友 时间:2022-04-07 22:39
mysql索引的数据结构,为什么用b+树
先从数据结构的角度来答。 题主应该知道B-树和B+树最重要的一个区别就是B+树只有叶节点存放数据,其余节点用来索引,而B-树是每个索引节点都会有Data域。 这就决定了B+树更适合用来存储外部数据,也就是所谓的磁盘数据。