I'm about to buy a new server. It will be a Xeon system with two
processors (4 cores per processor) and 16GB RAM. Two RAID extenders
will be attached to an Intel s5000 series motherboard, providing 12
SAS/Serial ATA connectors.
The server will run FreeBSD 7.0, PostgreSQL 8, apache, PHP, mail server,
dovecot IMAP server and background programs for database maintenance. On
our current system, I/O performance for PostgreSQL is the biggest
problem, but sometimes all CPUs are at 100%. Number of users using this
system:
PostgreSQL: 30 connections
Apache: 30 connections
IMAP server: 15 connections
The databases are mostly OLTP, but the background programs are creating
historical data and statistic data continuously, and sometimes web site
visitors/serach engine robots run searches in bigger tables (with
3million+ records).
There is an expert at the company who sells the server, and he
recommended that I use SAS disks for the base system at least. I would
like to use many SAS disks, but they are just too expensive. So the
basic system will reside on a RAID 1 array, created from two SAS disks
spinning at 15 000 rpm. I will buy 10 pieces of Seagate Barracuda 320GB
SATA (ES 7200) disks for the rest.
The expert told me to use RAID 5 but I'm hesitating. I think that RAID
1+0 would be much faster, and I/O performance is what I really need.
I would like to put the WAL file on the SAS disks to improve
performance, and create one big RAID 1+0 disk for the data directory.
But maybe I'm completely wrong. Can you please advise how to create
logical partitions? The hardware is capable of handling different types
of RAID volumes on the same set of disks. For example, a smaller RAID 0
for indexes and a bigger RAID 5 etc.
If you need more information about the database, please ask. :-)
Thank you very much,
Laszlo