mysql的索引原理

mysql索引采用B+树

一、索引采用B+树的优势

在这里插入图片描述

1可以进行范围查找,通过单向链表解决(通过单向链表已经排好序)。
2非叶子结点只存储key,不存储value;叶子结点同时存储key,value

二、为什么不使用其他数据结构

2.1、哈希索引

1哈希索引适合等值查询,无法进行范围查询
2哈希索引无法进行排序

2.2平衡二叉树

1随着树的高度增加,查找速度变慢
2如果要查找id>5的结点,可以看到还要往上查找父结点,效率低。
在这里插入图片描述

B树

在这里插入图片描述
1比起AVL树而言,解决了高度的问题。
2同样存在AVL树要查找id>5的结点,可以看到还要往上查找父结点,效率低。

参考

B站《MySQL索引数据结构为什么使用B+树》

相关推荐

  1. 索引设计原则MySQL

    2024-01-01 07:04:04       28 阅读
  2. mysql 索引失效原因

    2024-01-01 07:04:04       11 阅读
  3. MySQL 联合索引原理及失效原理

    2024-01-01 07:04:04       15 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-01 07:04:04       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-01 07:04:04       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-01 07:04:04       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-01 07:04:04       18 阅读

热门阅读

  1. 使用C语言的strtok函数来分割字符串

    2024-01-01 07:04:04       37 阅读
  2. 深度学习 | ModernTCN模型结构

    2024-01-01 07:04:04       43 阅读
  3. ios 上textarea placeholder不换行的问题

    2024-01-01 07:04:04       40 阅读
  4. 分布式【4. 什么是 CAP?】

    2024-01-01 07:04:04       34 阅读
  5. c# 让文件只读

    2024-01-01 07:04:04       31 阅读
  6. Prometheus监控nginx

    2024-01-01 07:04:04       36 阅读
  7. 在Neo4j中实现推荐算法

    2024-01-01 07:04:04       36 阅读
  8. 数据挖掘与知识发现:解析关键概念

    2024-01-01 07:04:04       25 阅读
  9. 常用的几种包管理器 npm yarn cnpm pnpm 安装

    2024-01-01 07:04:04       41 阅读