我们的生产服务器运行的是 SQL Server 2008 SP3。
我读过一篇关于“并行性成本阈值”的文章 - http://www.sqlskills.com/blogs/jonathan/tuning-cost-threshold-for-parallelism-from-the-plan-cache/ 我有一个几个问题。
我们的生产服务器上有相对较多的 CXPACKET 等待事件(平均为 85%)。服务器具有“并行成本阈值”和“最大并行度”的默认值
我开始探索提高“并行成本阈值”值的可能性。我怀疑这个值确实太低了,但我想在更改任何内容之前获得尽可能多的信息,而不仅仅是将其更改为 25 或 50,因为这是一些互联网帖子所建议的。
我读过这篇关于如何确定价值的好文章:http: //sqlknowitall.com/determining-a-setting-for-cost-threshold-for-parallelism/
我服务器的平均成本是 63。
我如何监控更改设置“之前”和“之后”服务器的状态,以验证该值对系统吞吐量的影响?
提前致谢,罗尼。
如果您有很多 CXPACKET 等待,则
减少MaxDOP 设置可能是合适的并且会有所帮助。假设您有一台 NUMA 机器(您很可能这样做),则不应更改并行度设置的成本阈值。MaxDOP: https: //support.microsoft.com/en-us/kb/2806535
...而且我在某处读到不需要更改成本阈值,但我仍在尝试追踪该链接:(
无论如何,请专注于 MaxDOP。
感谢所有的帮助者。我从以下链接创建了一条基线,以检查参数更改前后的我的实例: http ://www.sqlservercentral.com/scripts/baselines/96797/