SQL Server误区30日谈 第22天 资源调控器可以调控IO
误区 #22: 资源调控器可以调控IO
错误
资源调控器无法调控IO,希望下一个版本的SQL Server支持调控IO,调控IO对于对于减少对于大表的scan操作带来的性能影响很有帮助。
下面列表中的功能资源调控器同样也无法完成:
- 调控Buffer Pool的内存,内存调控器仅仅可以调控执行计划所占的内存,但对于Buffer Pool中缓存的数据页是无法调控的
- 可以对多个实例进行当作一个逻辑实体进行资源调控。这是不能的,对于多实例的资源调控只能通过Windows Server资源调控器实现,在这基础之上,在每台实例上对资源调控器进行设置
- 允许资源调控器对资源的使用进行监测,当超过阈值时进行报警
别会错意,我可不是说资源调控器不好,而是说加上了上面的功能会更好。
我的一个朋友,同时也是SQL MVP Aaron Bertrand 和SQL Team的项目经理写了关于这一点的白皮书:Using the Resource Governor。
相关推荐
-
如何在SQL Server 2014中用资源调控器压制你的存储?
在今天的文章里,我想谈下SQL Server 2014里非常酷的提升:现在你终于可以根据需要的IOPS来压制查询!资源调控器(Resource Governor)自SQL Server 2008起引入,但提供的功能还是有所限制:你只能限制CPU时间(这个已经很棒了),还有你能限制查询(从每个独立的查询)内存量. 但作为DBA的你,你经常会进行一些数据库维护操作,例如索引重建,DBCC CHECKDB操作等.我们都知道,这些操作会在你的存储里带来大量的IOPS直至峰值.如果在7 * 24在线的数据
-
SQL Server误区30日谈 第22天 资源调控器可以调控IO
误区 #22: 资源调控器可以调控IO错误 资源调控器无法调控IO,希望下一个版本的SQL Server支持调控IO,调控IO对于对于减少对于大表的scan操作带来的性能影响很有帮助. 下面列表中的功能资源调控器同样也无法完成: 调控Buffer Pool的内存,内存调控器仅仅可以调控执行计划所占的内存,但对于Buffer Pool中缓存的数据页是无法调控的 可以对多个实例进行当作一个逻辑实体进行资源调控.这是不能的,对于多实例的资源调控只能通过Windows Server资源调控器
-
SQL Server误区30日谈 第24天 26个有关还原(Restore)的误区
本系列文章一直所没有触及的就是有关"还原(Restore)"的话题,因为一旦牵扯到这个话题就会涉及大量的误区,多到我无法通过一篇文章说完的地步.事实上,我希望用字母表的顺序为每一个误区进行编号,希望你看了不要昏昏欲睡.下面开始揭穿这26个误区. 误区 #24: 26个有关还原(Restore)的误区都是错误的 24 a)可以通过WITH STOPAT参数在完整备份和差异备份的基础上还原到特定时间点当然不能.虽然这个语法看上去貌似能的样子,但这个语法的最佳实践是你在进行日志还原到特定时间
-
SQL Server误区30日谈 第30天 有关备份的30个误区
误区 #30:有关备份的30个误区全是错的在开始有关备份的误区之前,如果你对备份的基础没有了解,请看之前我在TechNet Magazine的文章:Understanding SQL Server Backups. 30-01)备份操作会导致阻塞不,备份不会导致对用户对象加锁,虽然备份对IO系统的负担导致看起来阻塞了,但实际上不会.唯一的特例是当备份包含到那些最小日志操作涉及到的数据区需要被加锁时,这个操作会阻塞CheckPoint,但DML操作永远不会受到备份操作的阻塞. 30-02)由完整恢
-
SQL Server误区30日谈 第5天 AWE在64位SQL SERVER中必须开启
误区 #5: AWE在64位SQL SERVER中必须开启 错误! 在坊间流传的有关AWE的设置的各种版本让人非常困惑.比如说如何设置起作用,如何设置不起作用,在32位和64位上是否需要AWE等. 好吧,我来概括一下: 在64位系统(SQL SERVER 2005+版本) AWE是不需要的(即使是ON状态,也毫无影响) 开启"锁定内存页"使得缓冲池中的内存页不会被置换到虚拟内存中(实际上所有的Single Page Allocator分配和Stolen的内存都不会被置换) 当开
-
SQL Server误区30日谈 第3天 即时文件初始化特性可以在SQL Server中开启和关闭
本系列文章是我在sqlskill.com的PAUL的博客看到的,很多误区都比较具有典型性和代表性,原文来自T-SQL Tuesday #11: Misconceptions about.... EVERYTHING!!,经过我们团队的翻译和整理发布在AgileSharp和博客园上.希望对大家有所帮助. 误区 #3: 即时文件初始化特性可以在SQL Server中 a)开启 和 b)关闭 a)是不允许的 b)是允许的 即时文件初始化是一个在SQL Server 2005以及之上的版本鲜为人知的特
-
SQL Server误区30日谈 第6天 有关NULL位图的三个误区
这样还能减少CPU缓存命中失效的问题(点击这个链接来查看CPU的缓存是如何工作的以及MESI协议).下面让我们来揭穿三个有关NULL位图的普遍误区. 误区 #6a:NULL位图并不是任何时候都会用到 正确 就算表中不存在允许NULL的列,NULL位图对于数据行来说会一直存在(数据行指的是堆或是聚集索引的叶子节点).但对于索引行来说(所谓的索引行也就是聚集索引和非聚集索引的非叶子节点以及非聚集索引的叶子节点)NULL位图就不是一直有效了. 下面这条语句可以有效的证明这一点: 复制代码 代码如下:
-
SQL Server误区30日谈 第4天 DDL触发器就是INSTEAD OF触发器
误区 #4: DDL触发器(SQL Server 2005之后被引入)就是INSTEAD OF触发器 这是错误的 DDL触发器的实现原理其实就是一个AFTER触发器.这个意思是先发生DDL操作,然后触发器再捕捉操作(当然如果你在触发器内写了Rollback,则也可能回滚). 存在Rollback也意味着这个触发器并不像你想象的那么轻量,来看下面的例子: ALTER TABLE MyBigTable ADD MyNewNonNullColumn VARCHAR (20) DEFAULT '
-
SQL Server误区30日谈 第2天 DBCC CHECKDB会导致阻塞
误区 #2: DBCC CHECKDB会引起阻塞,因为这个命令默认会加锁 这是错误的! 在SQL Server 7.0以及之前的版本中,DBCC CHECKDB命令的本质是C语言实现的一个不断嵌套循环的代码并对表加表锁(循环嵌套算法时间复杂度是嵌套次数的N次方,作为程序员的你懂得),这种方式并不和谐,并且-.. 在SQL Server 2000时代,一个叫Steve Lindell的哥们(现在仍然在SQL Server Team)使用分析事务日志的方法来检查数据库的一致性的方式重写了DBCC C
-
SQL Server误区30日谈 第19天 Truncate表的操作不会被记录到日志
误区 #19:Truncate表的操作不会被记录到日志 错误 在用户表中的操作都会被记录到日志.在SQL Server中唯一不会被记录到日志的操作是TempDB中的行版本控制. Truncate Table语句会将整个表中的所有数据删除.但删除的方式并不是一行一行的删除,而是将组成表的数据页释放,将组成表的相关页释放的操作交给一个后台的线程进行队列处理的过程被称为deferred-drop.使用后台线程处理deferred-drop的好处是这个操作不会使得其所在的事务需要执行很长时间,因此也就不
-
SQL Server误区30日谈 第23天 有关锁升级的误区
误区 #23: 锁升级的过程是由行锁升级到页锁,再由页锁升级到表锁错误 实际不是,在SQL Server 2005和之前的版本,页锁会直接升级到表锁. 在SQL Server 2005或SQL Server 2008,你可以通过如下跟踪标志改变锁升级的行为: 标志1211-完全禁止锁升级,但锁使用的内存会被限制在动态分配内存的60%,当超过这个值时,更多的锁将会伴随着内存溢出错误而失败. 标志1224-禁止锁升级,但内存使用超过40%时,会自动开启锁升级 如果标志1211和12
随机推荐
- 彻底搞懂JS无缝滚动代码
- asp.net 独立Discuz头像编辑模块分离打包
- JS设置CSS样式的方式汇总
- PHP处理数组和XML之间的互相转换
- php执行多个存储过程的方法【基于thinkPHP】
- 总结PHP删除字符串最后一个字符的三种方法
- 40个有创意的jQuery图片和内容滑动及弹出插件收藏集之二
- js学习总结之DOM2兼容处理this问题的解决方法
- SQLserver查询数据类型为ntext是空或NULL值的方法
- jQuery提示插件qTip2用法分析(支持ajax及多种样式)
- javascript实现信息的显示和隐藏如注册页面
- windows server 2012 dhcp服务器安装图解
- Android中activity的启动模式
- java的Arrays工具类实战
- 用JavaScript仿PS里的羽化效果代码
- bootstrap 设置checkbox部分选中效果
- Android网格视图GridView的使用
- Android 调用notifyDataSetChanged方法失败解决办法
- Android中init.rc文件的解析 分享
- PHP实现UTF8二进制及明文字符串的转化功能示例