小编AW_*_*DBA的帖子

存储过程调优帮助

实际计划:https://www.brentozar.com/pastetheplan/? id=SJviG_y1h

我正在寻找有关从哪里开始调整上述存储过程的建议。我们需要它在尽可能接近 1 秒的时间内完成,但目前在生产中最多需要 40 秒。SP 似乎会根据服务器工作负载而波动,因此需要它尽可能高效地运行。在 UAT 没有负载的情况下,针对同一数据库的副本,它在 5 秒内运行。

来自 Brent Ozar 的 sp_blitzcache 的警告包括:并行、计划警告、参数嗅探、隐式转换、函数连接、琐碎计划、未使用的内存授予、最近 4 小时创建的计划、多行表假脱机、非 SARGable

它在 Always On 可用性组数据库的主副本上运行(2 个节点设置,在辅助副本上启用同步提交和只读)。我们无法创建任何额外的索引。

SQL 版本为: Microsoft SQL Server 2017 (RTM-CU29) (KB5010786) - 14.0.3436.1 (X64) Enterprise Edition:Windows Server 2019 Standard 10.0(内部版本 17763:)(虚拟机管理程序)上基于核心的许可(64 位)

其他值得注意的配置:

  • SQL 最大内存设置为 92GB
  • 服务器有 8 个 CPU(全部位于 1 个 numa 节点上)
  • CTFP设置为50
  • MAXDOP 设置为 4
  • 主数据库启用了 RCSI

sql-server availability-groups query-performance performance-tuning

3
推荐指数
1
解决办法
219
查看次数