我的评论表中有150 000条记录,每天添加大约1000条新评论......我想知道是否应该在这样的表格上使用索引?它会对绩效产生正面或负面影响吗?我用mysql ...
答案 0 :(得分:4)
比较此表中INSERT和SELECT的数量。你每天做1000次INSERT,甚至不是每分钟一次。但是在网页上显示结果时,你可能会做更多的SELECT。如果访问者每次点击链接查看更多评论时都要等几秒钟,那么你就算数学......
编辑:使用索引。
答案 1 :(得分:2)
肯定会产生负面影响,也可能产生积极影响:
否定:每当插入/删除行或更新索引列时,都必须更新每个索引。
正面:数据检索可能会从索引(如果正确定义)中获得巨大好处
但是,每天1000次插入并不是很多,你很有可能正确定义索引的好处将超过开销。
答案 2 :(得分:2)
如果没有看到你正在做什么样的SELECT
查询以及模式是什么,就无法判断indx是否会被使用,更不用说帮助了。例如,如果您的数据基数较低,或者您正在进行
where MyColumn like '%somestring%'
那么索引也无济于事。需要更多信息。
答案 3 :(得分:1)
您不应索引经常更新的列,例如view_counter等。