索引是帮助MySQL高效获取数据的排好序的数据结构
索引的数据结构:
二叉树:不太使用,如果列从1开始顺序增加,会成为链表
红黑树:二叉自动平衡树,数据量大时,树的深度太大
Hash表:时间复杂度为1,但不支持范围查找
B-Tree:每个大节点上放更多的元素
B+Tree:
根节点常驻内存
MyISAM存储引擎索引实现
InnoDB存储引擎索引实现
数据和索引分开存储就是非聚集索引,一起存储就是聚集索引
innodb的表必须有主键,必须用整形且主键自增
叶子节点从左到右都是递增的趋势:便于范围查找
如果用UUID,那么在插入时,数据比较麻烦,String类型的比较更耗时