如何识别SQL Server中的IO瓶颈

上一篇 / 下一篇  2012-07-24 09:43:11 / 个人分类:数据库

51Testing软件测试网dX"[|4^]0l

  问题:

;W;b!I6A-mU+|@H*N0

R3sV`/}0fc6S f0  我们可能经常会遇到SQLServer数据库频繁关闭的情况。在分析了内存和CPU使用情况后,我们需要继续调查根源是否在I/O。我们应该如何识别SQLServer是否有I/O相关的瓶颈?51Testing软件测试网2D,v.gf3W Q/F SZ

51Testing软件测试网SoNdU@3M

  解决:51Testing软件测试网v cH0g/w_8a

51Testing软件测试网:Gt8U+U(II

  当数据页经常从缓冲池中移进移出的时候,I/O子系统就会成为SQLServer性能问题的关键因素之一。事务日志和tempdb同样也会产生重大的I/O压力。因此,你必须确保你的I/O子系统能按照预期运行。否则你将会成为响应时间增长和频繁超时的受害者。在这篇文章中,将描述如何使用内置工具识别I/O相关瓶颈,并提供一些磁盘配置的方法:51Testing软件测试网:~.f C7j\6of

51Testing软件测试网G f'N_TXCg}@

  性能计数器(Performance Monitor):51Testing软件测试网^D([w$n s_

51Testing软件测试网nM@x-^[9Y3]k1l

  可以使用性能计数器来检查I/O子系统的负荷。下面的计数器可用于检查磁盘性能:51Testing软件测试网m`DDJ]/|2K8m

!jIt/@#sYR0   PhysicalDisk Object:Avg.DiskQueue Length:计算从物理磁盘中的平均读和写的请求队列。过高的值代表磁盘操作处于等待状态。当这个值在SQLServer峰值时长期超过2,证明需要注 意了。如果有多个硬盘,就需要把这些数值除以2。比如,有4个硬盘,且队列为10,那么平均值就是10/4=2.5,虽然也证明需要关注,但不能使用10 这个值。

o0?.j/BD8\0

k-].jO$W dQh0  Avg.Disk Sec/Read和Avg.Disk Sec/Write:显示从磁盘读或者写入磁盘的平均时间。10ms内是很好的表现,20以下还算能接受。高于此值证明存在问题。51Testing软件测试网'?F9j`%ec"G%Uu

51Testing软件测试网 wo4\vU

  Physical Disk:%Disk Time:在磁盘忙于读或者写请求的时候持续时间的比率。根据拇指定律,此值应该小于50%。

D;UEESK,O051Testing软件测试网 d3n/c-xY`)w#s

  Disk Reads/Sec和Disk Writes/Sec计数器显示出在磁盘中读写操作的速率。这两个值应该小于磁盘能力的85%。当超过此值,磁盘的访问时间将以指数方式增长。51Testing软件测试网$g`p"TRiI,l

;M'fqT2Ac,E%| L0  可以通过以下方式来计算逐渐增长的负载的能力。一种方法是使用SQLIO。你应该找到吞吐量比较稳定,但缓慢增长。51Testing软件测试网w/mz:al

51Testing软件测试网W/{gf5@F

  可以使用以下公式来计算RAID配置:

^ fgl'kNFZD0

_'iMP$^!N t@0  Raid 0: I/O per disk = (reads + writes) / number ofdisks51Testing软件测试网SVo$p$Dwz6kNo Dt
  Raid 1: I/O per disk = [reads + (writes*2)] / 2
6L ?L+?dmt'}-e1{0  Raid 5: I/O per disk = [reads + (writes*4)] / number of disks
C$l TL*|0  Raid 10: I/O per disk = [reads + (writes*2)] / number of disks
51Testing软件测试网?:q&li4j M|[,Q

Kt%rG [.O#o'S0  比如:对于RAID 1,如果得到下面的计数器:

ZQ'nh/H mm"SU0

*a|)z(x g0  Disk Reads/sec = 9051Testing软件测试网7|J&rDMGZx

51Testing软件测试网K a8b:q$dz Q

  Disk Writes/sec =75

xv7r#gc'C'N2f0

%a&E+S:La/{0  根据公式:[reads + (writes*2)] / 2 or [90 + (75*2)] / 2 = 120I/Os每个磁盘。
zuf:U@0

{$T!F#~ X+S;A Y)k0

TAG:

 

评分:0

我来说两句

Open Toolbar