RAID Configuration

  • SQL Servers have always been given to me pre-built with all drives in a RAID 5 array.  I'm trying to change this to get better write performance.

    A new server for SQL Server 2005 has 4 internal SCSI drives.  I'm trying to determine the best configuration.  The databases will have a fair amount of write activity.  I'm thinking of 3 main options:

    1) All drives RAID 5

    2) Two RAID 1 arrays

    3) All drives RAID 10

    I'm thinking RAID 10 will be best.  Are there any drawbacks to running RAID 10 over RAID 5, excluding the drive space lost?  Is RAID 10 not desirable because the OS, SQL binaries, data files, and log files will all be on the same array?  Thanks.

  • The main consideration for performance is separating out the main filegroups.  For best performance data, logs and nonclustered indexes should be physically separated from one another.

    RAID 10 offers mirroring and striping, usually a good call for log files.  The striping helps improve performance.  RAID 5 offers better recoverability and more storage efficiency,  but it also incurs a "write penalty"; the overhead of calculating parity makes the write process less efficient.  RAID 5 is often used for data files, but should avoided used for log files.

    If you could slip one more drive in there somehow, I would recommend going RAID 5 for the data and RAID 1 for the logs.  If you didn't care about performance, you could RAID 5 them all for the most efficient use of storage and recoverability... but you did mention write performance.

    Overall with only 4 drives, two RAID 1's - one for data, one for logs, might be your best bet...

  • I also recommend two RAID 1's. Another benefit besides performance is better data security if you store the log and data files on different RAIDs.

Viewing 3 posts - 1 through 2 (of 2 total)

You must be logged in to reply to this topic. Login to reply