Vae*_*tus 95 mysql sql indexing
最近我学会了索引的奇迹,并且性能得到了显着提升.然而,凭借我所学到的一切,我似乎无法找到这个问题的答案.
索引很棒,但为什么有人只能将所有字段编入索引以使表格速度极快?我敢肯定有一个很好的理由不这样做,但三十字段表中的三个字段怎么样?30场比赛中10场比赛?人们应该在哪里画线,为什么?
Bri*_*ach 110
索引占用内存空间(RAM); 索引太多或太大,数据库必须将它们交换到磁盘或从磁盘交换.它们还会增加插入和删除时间(必须为插入/删除/更新的每个数据更新每个索引).
你没有无限的记忆.这样所有索引都适合RAM =好.
你没有无限的时间.仅索引需要索引的列可以最小化插入/删除/更新性能命中.
小智 23
请记住,每次更新,插入或删除行时都必须更新每个索引.因此,您拥有的索引越多,写入操作的性能就越低.
此外,每个索引占用更多的磁盘空间和内存空间(调用时),因此它也可能会减慢读取操作(对于大型表). 看一下这个
您必须平衡CRUD需求.写入表格变慢.至于绘制线的位置,这取决于数据的获取方式(排序过滤等).
| 归档时间: |
|
| 查看次数: |
29290 次 |
| 最近记录: |