【发布时间】:2018-01-15 00:34:31
【问题描述】:
我很好奇如何诊断永久表和临时表中的高扫描计数。我在运行存储过程时打开了统计信息,我试图弄清楚为什么扫描计数如此之高。我有实际的查询计划,SSMS 建议添加一些缺少的索引,但此时没有别的了。我可以考虑哪些策略来诊断这些问题?
https://www.brentozar.com/pastetheplan/?id=HksFRMLw-
SQL Server Execution Times:
CPU time = 0 ms, elapsed time = 0 ms.
Table 'disbursement_check'. Scan count 9, logical reads 2281, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
Table 'cif'. Scan count 9, logical reads 490, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
Table 'voucher'. Scan count 9, logical reads 3067, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
Table 'cif_loan_relationship'. Scan count 9, logical reads 890, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
Table 'loanacct'. Scan count 45, logical reads 44124, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
Table 'Workfile'. Scan count 0, logical reads 0, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
Table 'Worktable'. Scan count 0, logical reads 0, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
Table 'loanacct_trans_history'. Scan count 1166870, logical reads 3654129, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
Table '#B17AB456'. Scan count 8, logical reads 1180568, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
Table '#BAD74620'. Scan count 2423794, logical reads 2486442, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
Table '#BBCB6A59'. Scan count 62661, logical reads 125306, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
Table 'loan_class'. Scan count 2, logical reads 4, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
Table 'lookup_table'. Scan count 2, logical reads 6, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
Table 'loanacct_detail'. Scan count 9, logical reads 1348, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
Table 'Worktable'. Scan count 0, logical reads 0, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
SQL Server Execution Times:
CPU time = 59160 ms, elapsed time = 9877 ms.
Table '#TargetTransactions_________________________________________________________________________________________________0000000019E6'. Scan count 1, logical reads 1, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
【问题讨论】:
-
I have the actual query plan, and SSMS has suggested a few indexes to add that were missing, but at this point nothing else你能把执行计划分享为xml吗 -
@TheGameiswar 你有什么建议吗,因为它有 250 万个字符?
-
尝试 pastebin 或 brentozar.com/pastetheplan 发布实际执行计划(未估计) - 如果可能的话。
-
@BogdanSahlean 已添加。必须删除空格,因为该网站只允许 2 MB。
-
@TheGameiswar 添加
标签: sql-server