If you truly do not care about data protection -- either from drive loss or from
sudden power failure, or anything else -- and just want to get the fastest
possible performance, then do RAID 0 (striping). It may be faster to do that
with software RAID on the host than with a special RAID controller. And turn
off fsyncing the write ahead log in postgresql.conf (fsync = false).
But be prepared to replace your whole database from scratch (or backup or
whatever) if you lose a single hard drive. And if you have a sudden power loss
or other type of unclean system shutdown (kernel panic or something) then your
data integrity will be at risk as well.
To squeeze evena little bit more performance, put your operating system, swap
and PostgreSQL binaries on a cheap IDE or SATA drive--and only your data on the
5 striped SCSI drives.
I do not know what clustering would do for you. But striping will provide a
high level of assurance that each of your hard drives will process equivalent
amounts of IO operations.
Quoting Yves Vindevogel <yves.vindevogel@implements.be>:
> Hi,
>
> We are looking to build a new machine for a big PG database.
> We were wondering if a machine with 5 scsi-disks would perform better
> if we use a hardware raid 5 controller or if we would go for the
> clustering in PG.
> If we cluster in PG, do we have redundancy on the data like in a RAID 5
> ?
>
> First concern is performance, not redundancy (we can do that a
> different way because all data comes from upload files)
>
> Met vriendelijke groeten,
> Bien à vous,
> Kind regards,
>
> Yves Vindevogel
> Implements
>
>