如何深入浅出地理解MySQL中的索引原理和应用?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1041个文字,预计阅读时间需要5分钟。
哈希表常见模型适用于等值查询,区间查询速度慢,有有序数组等值区间查询性能优越。
索引常见模型哈希表适用于等值查询区间查询速度很慢有序数组等值区间查询性能优秀适用与静索引常见模型
哈希表适用于等值查询区间查询速度很慢
有序数组等值区间查询性能优秀适用与静态搜索引擎。 (更新成本高)
搜索树N叉树应用为主(减少树高和磁盘交互次数)InnoDB B树。
其他跳表LSM树等
哈希表结构
哈希表是一种以键 - 值(key-value)存储数据的结构我们只要输入待查找的值即 key就可以找到其对应的值即 Value。哈希的思路很
简单把值放在数组里用一个哈希函数把 key 换算成一个确定的位置然后把 value 放在数组的这个位置。
不可避免地多个 key 值经过哈希函数的换算会出现同一个值的情况。处理这种情况的一种方法是拉出一个链表
哈希表示意图
有序数组示意图
二叉搜索树示意图
InnoDB 的索引模型
每一个索引在 InnoDB 里面对应一棵 B 树。
InnoDB 的索引组织结构
主键索引的叶子节点存的是整行数据也叫聚簇索引(InnoDB中)
非主键索引的叶子节点内容是主键的值。
基于非主键索引的查询需要多扫描一棵索引树。因此我们在应用中应该尽量使用主键查询。
本文共计1041个文字,预计阅读时间需要5分钟。
哈希表常见模型适用于等值查询,区间查询速度慢,有有序数组等值区间查询性能优越。
索引常见模型哈希表适用于等值查询区间查询速度很慢有序数组等值区间查询性能优秀适用与静索引常见模型
哈希表适用于等值查询区间查询速度很慢
有序数组等值区间查询性能优秀适用与静态搜索引擎。 (更新成本高)
搜索树N叉树应用为主(减少树高和磁盘交互次数)InnoDB B树。
其他跳表LSM树等
哈希表结构
哈希表是一种以键 - 值(key-value)存储数据的结构我们只要输入待查找的值即 key就可以找到其对应的值即 Value。哈希的思路很
简单把值放在数组里用一个哈希函数把 key 换算成一个确定的位置然后把 value 放在数组的这个位置。
不可避免地多个 key 值经过哈希函数的换算会出现同一个值的情况。处理这种情况的一种方法是拉出一个链表
哈希表示意图
有序数组示意图
二叉搜索树示意图
InnoDB 的索引模型
每一个索引在 InnoDB 里面对应一棵 B 树。
InnoDB 的索引组织结构
主键索引的叶子节点存的是整行数据也叫聚簇索引(InnoDB中)
非主键索引的叶子节点内容是主键的值。
基于非主键索引的查询需要多扫描一棵索引树。因此我们在应用中应该尽量使用主键查询。

