标签: b+树

2 篇文章

为什么Mysql要用B+树来实现呢,而不是B树?
MySQL 选择 B+ 树而不是 B 树作为索引结构,主要是基于以下几个关键优势: 1. 更低的树高与更高的查询效率 B+ 树的内部节点不存储实际数据,只存放键值和子节点指针,因此每个节点能容纳更多键,从而有效降低树的高度。 树高越低,查询时需要的磁盘 I/O 次数越少,尤其适合磁盘存储系统,其中 I/O 是主要性能瓶颈。 2. 更高效的范围查询 …
Redis的zset底层为什么用跳表而非B+树?
Redis 的 zset(有序集合)底层使用跳表(skip list)而非 B+ 树,主要基于以下几个方面的考量: 1. 实现复杂度 跳表的实现相对简单,代码量少,易于维护和调试。 B+ 树结构复杂,需要处理节点分裂、合并、重新平衡等操作,实现难度较大。 2. 内存性能表现 Redis 是内存数据库,数据完全存储在内存中。跳表作为纯内存数据结构,其…