0

So I have installed 4x 450GB Hitachi 15K in Raid 10 (Dell T610 + H700 + mem + battery).

I have very simple issue. Read speed is terrible, I have also installed Raid 0 (2x 3TB WD Red) and speeds are like 330MB/s for read and 310MB/s for write.

With 4x 15K 450GB SAS drives in RAID10 I am getting only 300-360MB/s read and 330MB/r for write :/, as far as I'm concerned it should be ~500-600MB/s read and 300MB/s write...

I am using new firmware for H700, new bios for Dell T610, Windows Server 2008 R2.

Total system has 1x 120GB Vertex 3 for OS 2x 3TB 7K Raid 0 (330MB/s & 310MB/s) 4x 450GB 15K Raid 10 (300-360MB/s & 330MB/s)

All tests done on CrystalDiskMark

What is going on ???

When I've tried to copy data between drives I can see sometimes very high transfers but only for seconds, normally it is ~190-250MB/s :(

It is unacceptable poor performance and I would like to ask you what I should check...

This server has one role only, SQL Server (bare metal) with 1x database ~ 2.5TB (~150m rows) (database is on 2x 3TB raid) and second database should be deployed on 4x 450GB Raid 10 (~500-600GB (750m rows))...


Ok I discovered the issue here !!!

For some reason only 2 drives are used during reading !!! (only 2 drives are blinking)

It is 4x Raid 10 so it should use 4x drives, what am I doing wrong in here ???

It is Dell Perc H700

Mark Henderson
  • 68,316
  • 31
  • 175
  • 255
mike86
  • 35
  • 9
  • If you are not on a tight budget, I suggest considering ssd instead of hdd. A consumer grade ssd should give you a 10x speed improvement on database operations. As for the hdd, with the 4-disk raid10 you should get 2x the read speed of a single disk, so I think 300+mb/s sounds right. – Dan Jun 20 '15 at 19:53

1 Answers1

2

In terms of sequential performance, for both read and write, RAID10 of four drives behaves exactly as RAID0 of two drives. You are seeing that yourself with just two drives blinking. That is the expected behavior.

It is so, because RAID1 in standard configuration does not increase sequential read speed. (been wondering about the same thing about 11 years ago and got this answer by FreeBSD developer Pawel Jakub Dawidek).

The thing is, in standard RAID1, there are the same data on both drives. So if you read part from one drive and part from the other, you have to actually skip (seek) the unread parts. But actually skipping it is as costly in terms of performance, as is reading the data. Thus you get only the performance benefit from RAID0 in your setup. (I suppose your drives read about 150-180MB/s each.)

There are techniques that help increase the read speed in RAID1 array. For example, you can take a look at layout (far and offset) in Linux md driver. It is well explained in this answer.

Fox
  • 3,887
  • 16
  • 23
  • @MMike1986 RAID1+0 is stripe + mirror. RAID5 is parity, RAID50 is stripe+parity. And what I am saying is, you only get sequential read benefits from RAID0, not RAID1. It's like you had two drives in the array for this purpose. – Fox Jun 21 '15 at 08:32