4.4 I/O性能侦测

4.4 I/O性能侦测
通常I/O问题的主要侦测手段是使用性能监视器的对应计数器,特别是Physical Disk\
Disk Reads/sec和 Physical Disk\Disk Writes/sec这两个,其中涉及的常规性能指标如下: □ < 10 ms = 没有性能问题 □ 10 ~ 20 ms =存在问题 □ 20〜 50 ms = 性能很低 □ > 50 ms = 性能问题严重 还有一些 PAGEIOLATCH_*、ASYNC_IO_COMPLETION、IO_COMPLETION 或者
WRITELOG等待类型都是I/O瓶颈的潜在指标。
常见的I/O问题一般包含两种情况:配置失当、低效查询。
(1 ) 低效查询
低效查询主要指的是返回过多的数据,一般是因为缺失合适的索引,导致表扫描。过
多的扫描会引起内存空间不足,使得缓存中的数据及其他缓存内容先是被清除(或者移到磁
盘),然后又从磁盘加载到内存中。理想情况下,常用的数据应该尽可能久地驻留在内存中,
避免不必要的磁盘活动。针对这种问题,主要的优化手段就是优化查询、索引甚至改进数
据库设计。
( 2 ) 配置失当
相对于CPU和内存,磁盘配置的选择度比较大。在磁盘配置方面常见的问题是把数据
文件和日志文件存放在了同一个物理磁盘中,或者TempDB文件和其他数据库文件共用一 个磁盘等。相关内容已在4.3节介绍过,这里不赘述。
关于配置失当,这里有一个真实例子某个类OLAP系统,大规模使用临时表,但是
TempDB和其他文件混合存放,并且初始化时TempDB文件的大小设置得过小、文件数少。 当系统运行的时候,由于数据量在短时间内暴增,文件频繁自动增长,TempDB迅速成为 瓶颈,影响了整个系统的性能。面对这种情况,优化办法就是重新配置,在把TempDB移 到RAID 0 上,并进行文件拆分、调整初始大小后,整体运行速度迅速从小时级别降到了分
钟级别。
4 . 5 小结
本章主要针对CPU和磁盘这两个资源进行描述。这两部分其实大有学问,但是基于篇
幅因素,无法每个点都说清楚,只能选取常见的、重要的问题进行介绍,并对常见的问题
进行描述和给出解决方案。合理地选择、配置和管理这些资源,能够使得SQL Server的性 能得到质的飞跃。反之,则性能很难得到预期效果。

猜你喜欢

转载自www.cnblogs.com/zhouwansheng/p/9248116.html
4.4
今日推荐