B+树。
二叉树:如果数据是单边增长的情况 那么出现的就是和链表一样的数据结构了,树高度大。
红黑树:在二叉树的基础上多了树平衡,也叫二叉平衡树,不像二叉树那样极端的情况会往一个方向发展。但是如果数据量大了之后,树的高度就会很大。
B树:在红黑树的基础上,每个节点可以存放多个数据
B+树:B树变种,只在叶子节点上存数据,叶子节点之间的箭头是方便做范围查找。
MyISAM:一张表对应三个文件:表结构、表数据、表索引。他的索引是非聚集索引;
InnoDB :一张表对应两个文件:表结构、表数据+索引。他的索引是聚集索引,InnoDB的表须有主键,开发人员不设置主键,那会自动生成一列主键。建议InnoDB表使用自增数字为主键。
一对一查找快,但是范围查找很差。
InnoDB表数据文件本身就是按B+树组织的一个索引结构文件,必须要一个主键索引,不然没法存储,次级索引的叶子节点存的是主键值。B+树存储数据时需要排序,数字比较大小更快。使用自增的数字,在插入新数据时,直接加在树尾即可。