May 9, 2012 at 12:03 am
Hi guys,
I ran perf monitor and saw the number for PhysicalDisk:Avg Disk Queue Length is 2.93 during an one (1) hour period (interval is 15 seconds). This is for drive D on a 4 disk RAID5. Does this mean I have to divide 2.93 by 4 (number of disks) in order to have an accurate number for Avg Disk Queue Length? I saw a video training saying so but I am still not sure.
Thanks
May 10, 2012 at 9:56 am
htt (5/9/2012)
Hi guys,I ran perf monitor and saw the number for PhysicalDisk:Avg Disk Queue Length is 2.93 during an one (1) hour period (interval is 15 seconds). This is for drive D on a 4 disk RAID5. Does this mean I have to divide 2.93 by 4 (number of disks) in order to have an accurate number for Avg Disk Queue Length? I saw a video training saying so but I am still not sure.
Thanks
Look at Avg Disk sec/Read and Avg Disk sec/Write instead for latency, and look at Disk Read Bytes/sec and Disk Write Bytes/sec for throughput. Queue length is interesting, but if you're getting very low latency and very high throughput compared to your best case scenario, I would ignore it. In my SQLIO testing, I've noted that very low outstanding IOs tend to get lower performance out of arrays, whether local or on SANs.
wmic /namespace:\\root\cimv2 path Win32_PerfFormattedData_PerfDisk_LogicalDisk get /all
or
wmic /node:"server" /namespace:\\root\cimv2 path Win32_PerfFormattedData_PerfDisk_LogicalDisk get /all
will get you some information, but, unfortunately, not the critical Avg Disk sec/Read and Avg Disk Sec/Write, because Microsoft decided to round what should be tiny fractions of a second to a full Integer, rendering those fields worthless.
I have yet to find direct information on getting those measurements from
wmic /namespace:\\root\cimv2 path Win32_PerfRawData_PerfDisk_LogicalDisk get /all
but for manual monitoring, Perfmon translates things just fine.
May 10, 2012 at 10:41 am
Ignore queue length. It's hard to interpret on anything more complex than a direct attached disk and SQL can and will intentionally drive the disk queue length high during normal operation.
Gail Shaw
Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability
May 10, 2012 at 12:29 pm
I would not totally ignore the disk queue length since this is a local array. However a 15 second sample interval is way too long an interval - to diagnose real issues you'll have to get down to every second. The 15 second sample interval is almost an eternity.
The 'old school' formula for raising the 'red flag' of concern is:
# disks in the array * 2 is your warning threshold at a high level. so your 2.93 average is below the threshold for pain of 8.
However the other information posted is valid as well. I would concentrate on actual read and write queue lengths for internal disk arrays.
RegardsRudy KomacsarSenior Database Administrator"Ave Caesar! - Morituri te salutamus."
May 11, 2012 at 12:18 pm
Here are the numbers from another performance log:
Avg. Disk Queue Length: 7.47
Current Disk Queue Length: 6.96
Avg. Disk sec/Read: 0.02
Avg. Disk sec/Write: 0.00
Disk Read Bytes/sec:11,800,433.25
Disk Write Bytes/sec: 7,661.90
Thought?
Thanks.
May 11, 2012 at 12:26 pm
If those are indicative of the norm, I wouldn't worry at all.
Gail Shaw
Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability
Viewing 6 posts - 1 through 5 (of 5 total)
You must be logged in to reply to this topic. Login to reply