本文取材于《高性能MySQL第三版》的第5章,由于索引使用了较多的比较复杂的数据结构,限于篇幅,本文仅对这些数据结构进行简单介绍,如果不清楚的可以自行查资料学习
目录索引类型b-Tree索引哈希索引空间数据索引 (R-Tree)如何构造高性能索引应该考虑的逐步优化前缀索引覆盖索引压缩索引应该小心的谨慎选择:多列单独的索引聚簇索引冗余,重复索引和未使用的索引索引和锁总结
当我们使用
select xx from table where id=x
的时候,不知道你有没有想过,MySql是如何进行查
一.索引
应用
在使用MySQL或其他数据库的时候,往往需要给表添加索引,这样一般可以给数据的查询速度带来极大的提升。
概念
索引,可以理解成一本书的目录,用于快速了解和定位书本中的内容。而在MySQL中,索引是帮助其高效获取数据的、已排好序的数据结构
索引的数据结构
二叉树
红黑树
Hash表
B-Tree
…
索引案例
比如现在,MySQL中有这么一张表 test,需要进行查询(select * from test where id = 5)
id
value
1
12