Randy Minder Asked: 2017-06-07 11:13:52 +0800 CST2017-06-07 11:13:52 +0800 CST 2017-06-07 11:13:52 +0800 CST sp_BlitzFirst - 等待统计解释 772 我有一些 BlitzFirst 等待统计数据,如下所示: 这是解释这个的正确方法吗?在 30 秒的样本中,总共有 627.1 秒的 IO_Completion 等待,平均每秒每个核心 0.5 次等待,总共有 20,723 次等待,每次平均 30.3 毫秒? 另外,我没有使用 Since Startup 选项。 sp-blitz sp-blitzfirst 1 个回答 Voted Best Answer Brent Ozar 2017-06-07T13:34:08+08:002017-06-07T13:34:08+08:00 因此,让我们快速了解一下您的前两个等待时间: IO_COMPLETION - 等待写入存储 PAGEIOLATCH* - 等待从存储中读取 在 30 秒内,您的查询等待存储的时间为 1,655 秒。 您的存储可能很慢 - 如果您跳到 sp_BlitzFirst 输出的下一部分,它将显示 SQL Server 正在等待哪些数据和日志文件,以及等待了多长时间。然而,在您开始玩将责任归咎于 SAN 管理员之前,请考虑: 调整索引和查询以减少从磁盘读取的数据量(我建议为此使用 sp_BlitzIndex 和 sp_BlitzCache,尽管我有偏见(免责声明:我是合著者之一)) 向缓存数据添加内存,这将减少 PAGEIOLATCH,从而减轻存储压力,并可能减少 IO_COMPLETION 等待 在存储上花费大量资金(您可能会猜到上述两个修复高于此修复是有原因的)
因此,让我们快速了解一下您的前两个等待时间:
在 30 秒内,您的查询等待存储的时间为 1,655 秒。
您的存储可能很慢 - 如果您跳到 sp_BlitzFirst 输出的下一部分,它将显示 SQL Server 正在等待哪些数据和日志文件,以及等待了多长时间。然而,在您开始玩将责任归咎于 SAN 管理员之前,请考虑: