RAID Levels:-
RAID 0:- RAID 0 is known as disk striping. This RAID 0 stripes data across disks in the array, means , data will be equally distributed among all the disks.This will offer better throughput on the read/write operations. However, there is no data protection offered in this RAID level. If one disk fails, the data stored on the disk will be lost.
RAID 1:- RAID 1 is known
as disk mirroring. You need a minimum of two disks to form a RAID 1 array. One
primary disk is used for read/write operations and the data is replicated to
the second disk. This RAID level offers better read performance but slower
write performance. The main disadvantage is out of 2 disks only 1 disk used to
store the data.
RAID 5:- RAID 5 will provide good performance throughput and
prevent data loss if there is a disk failure. For the database which has high
read/write activity, RAID 5 will be a better choice when compared to RAID 0 and
RAID 1 in terms of data availability and data protection. For an ideal SQL
Server configuration, you should have a combination of RAID 1 and RAID 5. You
should mirror the operating system using RAID 1, and place transaction logs on
a RAID 1 that is separate from the RAID 1 that hosts the operating system. SQL
Server writes data to the transaction logs and maintains serial information of
all modifications that occurred in a SQL database. The transaction log files
can be used for rollback and roll forward of information from a SQL Server
database. The SQL Server files and filegroups should be placed on a RAID 5,
because you get best performance throughput by placing database files on RAID 5
disk array.
RAID 10:- RAID 10 is a
better choice than RAID 5, but RAID 10 would be more expensive than RAID 5.
RAID 10 is a combination of RAID 0+1, which is known as striping with
mirroring. You should first mirror disks and then create a stripe set of
mirrored disks. This provides high fault tolerance for data and excellent
throughput performance.
Best Practices:-
- RAID 1 is often chosen to store
operating systems, binaries, index file groups and database transaction
log files. Critical to log and index performance is fault tolerance and a
good write speed.
- Since log file are written
sequentially and are read only for recovery operations, recommended RAID
for Log Files is RAID 1 or 10. If your RAID 1 is at a 100% usage, choose
RAID 10 for better performance.
- For data files with random
access and read heavy data volumes, striping is important. So recommended
RAID is 5 or 10.
- For data files which require
good write performance, RAID 10 is recommended. Use a battery backed
caching RAID controller for better write performance
- For tempdb files with good
read/write performance RAID 0, 1 or 10 is recommended. Although tempdb
contains temporary data and DBA’s often go in for RAID 0 for tempdb, keep
in mind that SQL Server requires tempdb to carry out many of its
activities. So if you want your system to be always available, rethink
RAID 0.
- Putting log files or tempdb on
a RAID 5 array is not recommended, since RAID 5 does not perform well for
write operations. DBA's although have conflicting opinions over this
point.
No comments:
Post a Comment