●索引概述
介绍:索引(index)是帮助MySQL高效获取数据的数据结构(有序)。在数据之外,数据库系统还维护着满足特定算法的数据结构,这些数据结构以某种方式
引用(指向)数据,这样就可以在这数据结构上实现高级查找算法,这种数据结构就是索引。
·优点:提高数据检索的效率,降低数据库的io成本 通过索引列对数据进行排序,降低数据排序的成本,降低cpu的消耗
·缺点:索引列也是要占用空间的 索引大大提高了查询效率,同时却也降低更新表的速度,如对表进行 insert update delete 效率降低
索引结构: MySQL的索引是在存储层实现的,不同的存储引擎有不同的结构,主要包含以下几种:
注意:我们平常所说的索引,如果没有特别指明,都是指B+树结构组织的索引
·二叉树
缺点:顺序插入时,会形成一个链表,查询性能大大降低。大数据量情况下,层级较深,检索速度较慢
红黑树:大数据量情况下,层级较深,检索速度较慢
B-Tree(多路平衡查找树)