数据库索引有哪几种:是否有“过度索引”数据库表这样的事情

我正在使用 MySQL 数据库上的新表编写一个新功能。是否有通过索引列(我将在SELECT查询中用于WHERE)从一开始就获得性能命中,或者我应该等到我的表达到相当大的大小,然后再开始索引?

4

如果你最终需要索引,你也可以用表创建它们。这确实会减慢插入速度,但如果你需要它们,它们也可能在那里。如果你知道正确的答案,为什么要等待慢速查询?

反对立即将它们放入的一个论点是,实际的查询是否会通知索引策略。

请注意,索引会使某些操作更快(特别是selects)。但是,它们会使其他操作变慢(特别是insertupdatedelete)。因此,您应该对索引进行深思熟虑。

1
Fromthis related post:

比你需要的多一个索引太多了。少一个太少了。

我试着寻找一个案例,有太多的索引是一个问题,不能真正找到任何东西

知道你有太多的,如果你的插入太慢,和用于阅读的索引没有加快速度足以弥补它。

1

当您插入,更新,删除表时,索引也需要更新。

See thisArticle about indexing
1

是的,插入和更新可能会因为索引而变慢。然而,在我的实践中,这并不是一个常见的问题。你只想添加你知道你需要的索引。在解决新问题时,等待添加其他索引。有一件事要考虑很多次:“如果”索引被遗忘,不需要,实际上会导致性能问题,如果找到问题索引,开发人员将花费额外的时间来确定其他索引的一部分。

本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处

(952)
Fx5u编程手册:如何在Python中将1分钟打开-高-低-关闭数据转换为另一个时间范围(fx:5分钟 1小时)
上一篇
Pdf文件编辑器:PDF文件元数据的批处理编辑器(pdf metadata editor)
下一篇

相关推荐

发表评论

登录 后才能评论

评论列表(84条)