Java高频面试题日更挑战「Day14」

MySQL 为什么 InnoDB 是默认引擎?

聚集索引是指数据库表行中数据的物理顺序与键值的逻辑(索引)顺序相同。一个表只能有一

个聚簇索引,因为一个表的物理顺序只有一种情况,所以,对应的聚簇索引只能有一个。聚簇

索引的叶子节点就是数据节点,既存储索引值,又在叶子节点存储行数据。

Innodb 创建表后生成的文件有:

frm:创建表的语句

idb:表里面的数据+索引文件

MySQL 索引底层结构为什么使用 B+树?

 哈希虽然能够提供 O(1) 的单数据行操作性能,但是对于范围查询和排序却无法很好地支

持,最终导致全表扫描;B 树能够在非叶节子点中存储数据,但是这也导致在查询连续数

据时可能会带来更多的随机 I/O,而 B+树的所有叶节点可以通过指针相互连接,能够减

少顺序遍历时产生的额外随机 I/O;

 第一,B 树一个节点里存的是数据,而 B+树存储的是索引(地址),所以 B 树里一个节

点存不了很多个数据,但是 B+树一个节点能存很多索引,B+树叶子节点存所有的数据。

 第二,B+树的叶子节点是数据阶段用了一个链表串联起来,便于范围查找。

B+ 树的叶子节点链表是单向还是双向?

双向链表

学习之路贵在坚持,关注我!

浩说编程陪你每天三道高频面试题,日积月累一定会有所收获!

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容