On Tue, Mar 07, 2006 at 09:15:37PM +0100, Joost Kraaijeveld wrote:
> Jim C. Nasby wrote:
> > Well, the problem is that you're using RAID5, which has a huge write
> > overhead. You're unlikely to get good performance with it.
> Apparently. But I had no idea that the performance hit would be that big.
>
> Running bonnie or copying a large file with dd show that the card can do 30-50 MB/sec. Running a large update on my
postgresqldatabase however, show a throughtput of ~ 2MB/sec, doing between ~ 2500 - 2300 writes/second (avarage). with
anutilisation of almost always 100%, and large await times ( almost always > 700), large io-wait percentages (>50%),
allmeasured with iostat.
While there are some issues with PostgreSQL not getting as close to the
theoretical maximum of a dd bs=8k (you did match the block size to
PostgreSQL's page size, right? :) ), a bigger issue in this case is that
better cards are able to remove much/all of the RAID5 write penalty in
the case where you're doing a large sequential write, because it will
just blow entire stripes down to disk. This is very different from doing
a more random IO. And it's also very possible that if you use a block
size that's smaller than the stripe size that the controller won't be
able to pick up on that.
In any case, RAID0 will absolutely be the fastest performance you can
get.
--
Jim C. Nasby, Sr. Engineering Consultant jnasby@pervasive.com
Pervasive Software http://pervasive.com work: 512-231-6117
vcard: http://jim.nasby.net/pervasive.vcf cell: 512-569-9461