【发布时间】:2015-08-12 23:56:07
【问题描述】:
sys.dm_db_missing_index_group_stats 的文档使用了“用户查询”和“系统查询”这两个术语,但并未定义它们的含义。例如:
- user_seeks:“由用户查询引起的搜索次数,组中推荐的索引本可以用于。”
- system_seeks:“由系统查询引起的搜索次数,例如自动统计查询,组中推荐的索引可以用于。”
根据System query to determine full (including inherited from AD ROLES) view of permissions in a database? 使用该术语的方式,我假设系统查询是针对system tables 的查询。那么用户查询必须是针对user tables的查询。
有人对这两个术语的定义有更权威的来源吗?我之所以问,是因为我正在使用 sys.dm_db_missing_index_group_stats 的结果,并考虑如何在决定是否应用索引时正确权衡 avg_user_impact 与 avg_system_impact。
【问题讨论】:
-
我认为用户查询是用户在 sql server 上执行的查询,而系统查询是 sql server [在场景任务后面] 运行的查询。如果您曾经运行过跟踪,您将看到 sql server 必须做多少工作才能保持 sql server 实例运行,即使没有用户在服务器上执行任何查询。
-
我还没有看到这个词是这样使用的。例如,sqlserverperformance.wordpress.com/2010/09/29/… 有一个名为“SQL Azure System Queries”的脚本,其中包含一组针对 sys.* 表的 SELECT。但 SQL Server 文档从未出现并实际定义了该术语。
标签: sql-server sql-server-2012 database-performance sqlperformance