I have a 4 * 1.5TB RAID5 disk array (software linux RAID, formatted with jfs) on my Fedora 12 system and want to expand it by adding another 1.5TB disk.
I have added a drive to the system and conducted a simple performance check on it to make sure it was functioning properly:
Code:
# dd if=/tmp/bigfile.dat of=/dev/sdg1
5478774+1 records in
5478774+1 records out
2805132609 bytes (2.8 GB) copied, 168.77 s, 16.6 MB/s
But 16.6 MB/s is lousy. I ran an iostat -dmx 2 on this drive at the time of this lousy performance, and typical output was:
Code:
Device: rrqm/s wrqm/s r/s w/s rMB/s wMB/s avgrq-sz avgqu-sz await svctm %util
sda 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
sdb 1.50 0.00 258.50 0.00 16.25 0.00 128.74 0.17 0.66 0.36 9.30
sdg 0.00 3556.00 4160.00 32.00 16.25 16.00 15.76 135.73 35.11 0.24 100.05
(note that sda and sdb are a linux raid mirror set for the / filesystem that holds /tmp). I formatted the new drive (/dev/sdg1) with jfs and mounted it under /mnt2:
Code:
# jfs_mkfs /dev/sdg1
jfs_mkfs version 1.1.13, 17-Jul-2008
Warning! All data on device /dev/sdg1 will be lost!
Continue? (Y/N) y
\
Format completed successfully.
1465138552 kilobytes total disk space.
# mount /dev/sdg1 /mnt2
and ran a similar test, this time to the filesystem:
Code:
# dd if=/tmp/bigfile.dat of=/mnt2/bigfile.dat
5478774+1 records in
5478774+1 records out
2805132609 bytes (2.8 GB) copied, 25.6558 s, 109 MB/s
109 MB/s is awesome. An iostat -dmx 2 typically looked like this during this better performance:
Code:
Device: rrqm/s wrqm/s r/s w/s rMB/s wMB/s avgrq-sz avgqu-sz await svctm %util
sda 9.00 0.00 1777.00 0.00 111.62 0.00 128.65 1.43 0.78 0.39 69.75
sdb 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
sdg 0.00 128.50 3.50 230.50 0.01 109.26 956.36 96.04 394.79 4.27 100.00
My question is this: if I add this new disk to the exisitng 4-disk RAID5 array, will it perform badly (around the 16.6 MB/s mark) or will it perform better (closer to the 109 MB/s mark)?
I would like to know what the performance will be like before I add the disk to the array because I don't want to wait for the whole array to be rebuilt before finding out my array is performing badly. The array is used as part of a mythtv system and has up to 6 simultaneous recordings running on it, so it needs to perform well.
I'm confused!
Thanks in advance for any help!
-Daemo