微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

什么是SQL Server的理想索引策略?

我和朋友正在开发一个使用sql Server的新项目.在我之前完成项目的sql中,我总是将索引放在JOIN或WHERE中使用的任何字段上.

我的朋友只有在他们有性能需求时才添加它们.这个想法是维护索引需要付出代价,并且您希望确保支付这笔费用.可以公平地说,有些查询不会经常使用,而且有些表会比其他表更加积极地添加.

因此,我正在寻找有关数据库索引的“最佳实践”的建议.什么对你有用?

解决方法

我个人倾向于主动方法:根据您的查询,在需要的地方添加索引.正如您所说,在JOIN或WHERE中涉及的字段.每个索引都会加速读取查询,但会降低写入速度(因为每次写入都需要更新索引).因此,对于写密集型表,可能需要其他解决方案(数据仓库,复制……).

另一种方法,只添加性能需要它们的索引,只有在你进行主动监控时才有效,但即使这样也有一些缺点:

>您将不得不向遇到性能问题的表添加索引.在添加索引时,您的表被锁定 – 这是一个使用频繁的表!>通常在测试时,测试数据比应用程序中的实际数据小几个数量级.瓶颈可能会被忽视.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐