【445、MySQL 索引默认数据结构】

63 阅读1分钟

MySQL 索引默认使用的数据结构是 B+ 树,它是一种树形数据结构,通常用于数据库和文件系统中对数据进行索引。

B+ 树和 B- 树都是多路平衡查找树,它们的不同之处在于:

  1. 节点结构:B+ 树的非叶子节点只存储键值信息,而不存储数据,只有叶子节点才存储数据;B- 树的每个节点都存储键值和数据信息。
  2. 叶子节点:B+ 树的叶子节点之间通过一个指针串联起来,形成一个有序的链表,方便范围查询;B- 树的叶子节点没有这样的指针,需要通过中序遍历才能得到有序序列。
  3. 分裂合并:B+ 树的分裂和合并只针对叶子节点,不需要涉及非叶子节点,因此更高效;B- 树的分裂和合并需要同时调整非叶子节点,开销较大。

因此,在需要支持范围查询、大量数据插入和删除的场景下,B+ 树更加适用。