mysql数据索引,加快查询速度
一、什么是索引? 在mysql中,索引是一种特殊的数据库结构,由数据表中的一列或多列组合而成,可以用来快速查询数据表中有某一特定值的记录。
通过索引,查询数据时不用读完记录的所有信息,而只是查询索引列即可。 二、索引解读 在MySQL的中,索引在大数据量查询的情况下必须用到索引,因为索引是类似于目录。如果不使用索引,数据会零散的保存在磁盘块中,查询数据需要挨个遍历每一个磁盘块,
直到找到数据为止,使用索引后会将磁盘块以树桩结构保存,查询数据时会大大降低磁盘块的访问数量。想象一下,每条数据的查询都是一个io扫描的话,假设一张表有一百万条数据,
你要找的数据刚好就是最后一条,那么就要进行一百万次io,这样就使数据库的性能大幅度降低了。索引就是解决这样的问题的。 那么问题来了,为什么索引能解决这样的问题呢? 首先,我们要了解索引使用的数据结构,MySQL 中存储索引用的一般都是 B+ 树。它的数据都存放在叶子节点中,同时叶子节点之间还添加了指针形成了链表。
有点像 HashMap 的底层实现,数组 + 链表的结构。 ———————————————— 原文链接:https://blog.csdn.net/caochuang111111/article/details/124218491
查询有了链表结构,就不需要一个一个遍历,这样速度就会提高。
道法自然