关于java:Java面试请说一下Mysql索引的优点和缺点

37次阅读

共计 788 个字符,预计需要花费 2 分钟才能阅读完成。

明天分享的这道面试题,让一个工作 4 年的小伙子去公众点评拿了 60W 年薪。

这道面试题是:”请你说一下 Mysql 索引的长处和毛病“

对于这道题,看看普通人和高手的答复

普通人:

嗯。。。。。。。。。

高手:

索引,是一种可能帮忙 Mysql 高效从磁盘上检索数据的一种数据结构。

在 Mysql 中的 InnoDB 引擎中,采纳了 B + 树的构造来实现索引和数据的存储

在我看来,Mysql 外面的索引的长处有很多

  1. 通过 B + 树的构造来存储数据,能够大大减少数据检索时的磁盘 IO 次数,从而晋升数据查问的性能
  2. B+ 树索引在进行范畴查找的时候,只须要找到起始节点,而后基于叶子节点的链表构造往下读取即可,查问效率较高。
  3. 通过惟一索引束缚,能够保障数据表中每一行数据的唯一性

当然,索引的不合理应用,也会有带来很多的毛病。

  1. 数据的减少、批改、删除,须要波及到索引的保护,当数据量较大的状况下,索引的保护会带来较大的性能开销。
  2. 一个表中容许存在一个聚簇索引和多个非聚簇索引,然而索引数不能创立太多,否则造成的索引保护老本过高。
  3. 创立索引的时候,须要思考到索引字段值的分散性,如果字段的反复数据过多,创立索引反而会带来性能升高。

在我看来,任何技术计划都会有两面性,大部分状况下,技术计划的抉择更多的是看中它的劣势 和以后问题的匹配度。

以上就是我对这个问题的了解。

总结

行业竞争加剧,再加上当初大环境不好,各个一二线大厂都在裁员。

带来的问题就是,人才筛选难度减少,找工作越来越难。

这道题目考查的是求职者对于 Mysql 的了解水平,不算难,但能卡主很多人。

喜爱的敌人记得点赞和珍藏。

有任何工作和学习上的问题,能够随时私信我。

版权申明:本博客所有文章除特地申明外,均采纳 CC BY-NC-SA 4.0 许可协定。转载请注明来自 Mic 带你学架构
如果本篇文章对您有帮忙,还请帮忙点个关注和赞,您的保持是我一直创作的能源。欢送关注同名微信公众号获取更多技术干货!

正文完
 0