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

明天分享的这道面试题,让一个工作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带你学架构
如果本篇文章对您有帮忙,还请帮忙点个关注和赞,您的保持是我一直创作的能源。欢送关注同名微信公众号获取更多技术干货!

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理