Storage and RAID Levels#
The RAID levels have a big impact on both performance and availability. The most common RAID levels that you will encounter are:
-
RAID 0 (sometimes called disk striping). This RAID level spreads all the data across all the available disks. You often see this RAID level used in different database benchmarks. RAID 0 provides good performance, but you should never use it on a production server because one disk failure will result in data loss.
-
RAID 1 (sometimes called disk mirroring). With RAID 1, data is mirrored on the disks. Read and write performance is good, but the overall disk capacity is cut in half. RAID 1 is often used for SQL Server log files. It can sustain one disk failure.
-
RAID 5 (sometimes called disk striping with parity). RAID 5 stripes data across multiple disks and uses a disk for data redundancy. It is often used for data files. This RAID level provides good read performance and can sustain the failure of one disk. However, it is known for slower write performance.
-
RAID 10 (sometimes called disk mirroring with striping). RAID 10 combines the performance of striping with the protection of mirroring. RAID 10 provides the highest levels of performance and availability out of the different RAID levels. RAID 10 uses twice as many disks as RAID 5, but it can sustain multiple disk failures. A RAID 10 array can sustain failures for as many as half of the disks in the set. RAID 10 is good for both data and log files.
For Critical Manufacturing databases, we strongly recommend to use:
-
RAID 5 for the ODS and Data Warehouse databases.
-
RAID 10 or RAID 5 for the Online database.
-
Solid State Disks (SSD) or RAID 10 for TempDB database.