栏目导航
热点推荐
- 心得:Sql语句绝妙用法
- SQL Server数据转换服务小妙招
- SQL Server数据库常用的T-SQL命
- 详解SQLServer 存储过程
- SQL数据库挂马解决方案
- 分析 SQL Server 的内存为何不断
- SQL Server数据库查询速度慢的原
- 详细讲解删除SQL Server日志的具
- 三步骤快速创建SQL Server数据库
- SQL Server事务日志的几个常用操
- SQLServer应用程序中的高级SQL注
- 使用SQL Server 2008进行服务器
阅览排行
SQLSERVER的max degree of parallelism参数
www.jz123.cn 2011-04-27 来源: 站长家园 责任编辑(袁袁) 我要投递新闻
在具有多个微处理器或 CPU 的计算机上运行时,它将为每个并行计划执行检测最佳并行度(即运行一个语句所使用的处理器数)。您可以使用 max degree of parallelism 选项来限制并行计划执行时所用的处理器数。如果默认值为 0,则使用所有可用的处理器。将 max degree of parallelism 设置为 1 以取消生成并行计划。将该值设置为大于 1 的数字(最大为 64)来限制执行单个查询时所用的最大处理器数。如果指定的值比可用的处理器数大,则使用实际可用数量的处理器。如果计算机只有一个处理器,则将忽略 max degree of parallelism 值。
以下来自微软工程师经验传授:
关于max degree of parallelism这个选项,一般情况下采用默认的0就可以了,这样的话SQL会根据查询的复杂度来决定使用多大并发度的查询。但是在有些OLTP(联机事务处理)系统中,我们会发现SQL中存在大量的并发查询,从而可能从两方面影响SQL性能:
1. 单个查询的并发度过高会导致查询会花大量的时间在等待并发同步上,从而影响查询性能
2. 并发查询太多会占用大量的CPU资源,从而减少其它查询得到CPU时间的机会,这样的话会使其它查询变慢。
一般来说,如果我们看到SQL Server中有大量的CXPACKET等待类型、或者有许多查询长期处于Runnable的状态(表示该查询在等待CPU时间片),我们会建议客户将并发度降下来,以进一步排查问题。
上一篇:当server死机的时候手工强制产生一个dump文件 下一篇:隐式转换以及SQL Server的相关性能问题