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

sql-server – SQL Server – 如何确定索引是否未被使用?

我有一个高需求的事务数据库,我认为是过度索引.最初,它根本没有任何索引,因此为常见过程添加一些索引会产生巨大的差异.但是,随着时间的推移,我们已经创建了索引来加速单个查询,一些最流行的表上有10-15个不同的索引,在某些情况下,索引只是略有不同,或者是相同的列以不同的顺序排列.

有没有一种直接的方法来观察数据库活动并告诉我们是否有任何索引不再被命中,或者它们的使用百分比是多少?我担心创建索引是为了加快单个每日/每周查询,甚至是不再运行的查询,但每次数据更改时索引仍然必须保持最新.

对于高流量表,这是十几次/秒,我想要消除压缩数据更新的索引,同时只提供微小的改进.

解决方法

查看用户搜索/扫描/查找的数量以及 sys.dm_db_index_usage_stats中的最后一次用户搜索/扫描/查找.这些统计信息在服务器启动时重置,因此您必须在服务器启动并运行相关的负载后进行检查时间.

原文地址:https://www.jb51.cc/mssql/84098.html

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

相关推荐