首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MAXDOP建议

MAXDOP建议
EN

Database Administration用户
提问于 2018-09-18 10:02:42
回答 1查看 214关注 0票数 0

我们希望在Server实例上实现最佳实践。我们的所有实例仍然在默认设置MAXDOP = 0的情况下运行。

在阅读了建议设置的几页之后(包括微软支持埃里克·达林的职位 on brentozar.com),我们希望检查我们是否正确地理解了这些建议的实例。我们所有的实例都运行在虚拟机上,许多实例只有一个套接字和少数几个虚拟处理器。

示例1:

  • 1 x套接字2.30 GHz
  • 6x虚拟处理器
  • 运行1xSQLServer实例(2016 SP1 CU8,Web 64位)

将MAXDOP从0改为6,还是从0更改为3?

既然这个实例只有一个套接字,那么从0更改到6肯定没有什么区别吗?我们有可能从改变这个设置中得到什么吗?

示例2:

  • 2 x套接字2.30 GHz
  • 每个套接字6x虚拟处理器
  • 跑8x(别问了!)Server实例(2012年SP4,标准版64位)

将MAXDOP从0改为6?我们有可能从改变这个设置中得到什么吗?

EN

回答 1

Database Administration用户

发布于 2018-09-18 10:35:05

将MAXDOP从0改为6?我们有可能从改变这个设置中得到什么吗?

简单地说,这取决于您的工作负载和查询的cpu使用情况。

示例1:

您的CPU使用情况如何,您是否在某些查询上看到了尖峰,这些查询是否阻碍了其他查询?

如果答案是

考虑将maxdop更改为2或4。此外,检查成本阈值是否为并行性,如果这是默认的5,则考虑将其设置得更高,但与往常一样,监控工作负载的前后是关键。

示例2:

这个问题有点棘手,因为一个实例可能占用计算机上的所有资源。

本例中的一个重要因素是确定哪些实例是始终运行其查询最关键的实例,而不影响其他五个实例。

监视之前和之后的工作负载,但是对所有实例保持在0,并且在2个或更多实例上运行大型查询将导致瓶颈。

我将再次考虑将不太重要的实例设置为2,对于更重要的实例,首先将其设置为4,并根据结果再次更改。(这里还考虑了并行化设置的成本阈值)。

票数 3
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/217890

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档