⑥. InnoDB索引实现(聚集)
- ①. 聚集索引-叶节点包含了完整的数据记录
- 非叶子节点不存储data,只存储索引(冗余),可以放更多的索引
- 叶子节点包含所有索引字段
- 叶子节点用指针连接,提高区间访问的性能
②. 为什么建议InnoDB表必须建主键,并且推荐使用整型的自增主键,而不用UUID?
如果没有建立主键,那么mysql会默认将建表的语句中的不重复的列作为主键储存b+树,如果所有列都有重复数据,MYSQL会自动创建一个列出来,建立B+树的关系。建立了主键,MYSQL就可以根据主键来展示B+树的数据结构。
使用UUID能让主键唯一,但是在比较时,数据很大,在底层比的是位,如果我们使用简单的主键自增,一下就比较好
③. B树和B+树区别一,B+的data和索引全部在叶子节点,这样,可以储存更多的数据
④. B树和B+树区别二,B+树有用指针链接,B树没有。试想,需要查询大于20的数据,那么B+树就可以根据折半查找找到20这个数据,再根据30储存的箭头找到49、50,依次这样下去。如果换做B树,查找49、50的时候,又需要重新进行扫描全表遍历