共计 393 个字符,预计需要花费 1 分钟才能阅读完成。
索引简介
索引是帮忙 MySQL 高效获取数据的数据结构。
索引的目标在于进步查问效率,与字典相似,能够了解为“排好序 的疾速查找 数据结构”。
数据库除数据自身之外,还维护者一个满足特定查问算法的数据结构,这些数据结构以某种形式指向数据,这样就能够在这些数据机构的根底上实现高级查找算法,这种数据结构就是索引。
咱们平时所说的索引,个别是指 B + 树(多路搜寻树)构造组织的索引。
索引构造示例
上图中,为了放慢 Col2 的查找,能够保护一个右图所示的二叉树,每个节点别离蕴含索引键值和指向对应数据记录物理地址的指针,这样就能够通过二叉查找疾速获取数据记录的物理地址,从而找到相应的数据。
索引的长处
进步数据查找效率,升高数据库的 IO 老本。
晋升数据排序效率,升高数据库的 CPU 耗费。
索引的毛病
索引实际上也是数据表,过多的索引会占用更多的磁盘空间。
索引会升高增删改的速度,因为每次操作数据都须要对索引文件进行保护。
正文完