【问题标题】:SQL Server - High buffer timeSQL Server - 高缓冲时间
【发布时间】:2019-10-14 20:50:38
【问题描述】:

我注意到 SQL 服务器上有大量 waitingRequestsCount。 latch_class 是缓冲区。请参阅随附的屏幕截图。通过 SQL 服务器仪表板,我看到大量 (32221334) 等待缓冲池。有人可以解释一下导致大量等待的原因吗?

【问题讨论】:

  • 我建议将此线程转移到dba.stackexchange.com以获得更好的答案。
  • 我认为您可以通过查找使用并行性的查询来开始调查。并行性既是福也是祸。

标签: sql-server time buffer wait


【解决方案1】:

有人能解释一下导致大量等待的原因吗?

这些是闩锁等待,当需要由多个会话访问时,需要保持内存中页面的完整性。 大量 的闩锁等待无需担心。如果等待时间很长,则可能表明存在需要进一步troubleshooting 的问题。即使您有很多 个闩锁等待,但它们平均而言非常短,并且这些统计数据是自 SQL Server 实例上次启动以来累积的。

与其深入了解锁存器,不如从等待开始,它提供了更全面的工作负载性能视图(尽管此视图缺少将等待置于上下文中的总 CPU 时间)。

【讨论】:

  • 谢谢。我看到大量的 CPU 并行等待。查看更新的屏幕截图
  • 并行等待不一定是问题。它们只是表明有很多并行查询计划正在运行,其中计划中的一些线程正在等待其他线程完成。
  • 我注意到同样的工作会在几分钟到几小时内运行。我试图确定是什么导致特定工作的时间如此不同。根据屏幕截图,你能指出我在哪里寻找找出根本原因吗
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-06-26
  • 2011-10-30
  • 1970-01-01
  • 2011-12-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多