数据结构之美:为什么 MySQL 选择 B+树做索引? 提到 MySQL 索引,相信使用过的小伙伴并不陌生,日常工作中,我们经常会加索引来提升查询效率,那么,为什么一个慢查询加上索引查询速度就能提升一个档次?索引后面的实现机制到底是什么?今天就让我们一起来探讨这个话题。 申明:本文说的磁盘是指普通的机械磁盘 一、索引是什么 比如阅读时,索引就是书的目录,如果想快速到达某一篇文章,通常会先查询目录找到页码,然后通过页码找到文章。 如果对数据库比较熟悉的话,那么就能很好的知道,索引就是数据库的目录,当数据表的数据成百万,千万级时,要想快速定位数据行时,就需要这样一张数据目录。因此,索引的本质就是选择一种合理的数据结构,在执行效率方面能尽可能地高,在存储空间方面,又不要消耗太多的内存。 那么,选择哪一种数据结构呢? 二、索引数据结构 用于索引的数据结构有多种,这里介绍 3 种常见且简单的数据结构:哈希表、有序数组和搜索树。 2.1、哈希表 哈希表是一种以 key-value 键值对存储数据的结构,比如:java 的 hashmap, redis 的 key-value 都是这样一种形式。hash 表的实现思路也很简单:用一个哈希函数把 key 换算成数组确定的位置,然后把 value 放在数组的这个位置。













2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/68348.html