Databases Reference
In-Depth Information
Data 1
Data 2
Data 3
Data 4
Parity 1
Parity 1
Data 5
Data 6
Data 7
Parity 3
Parity 4
Data 8
Data 9
Data 10
Parity 5
Parity 6
Data 11
Data 12
Data 13
Parity 7
Parity 8
Data 14
Data 15
Data 16
FIGURE 4-7
To create the parity information the RAID engine reads data from the data disks. This data is
computed into parity by the XOR calculation. The parity information is written to the next data
drive. The parity information is shifted to a different drive with each subsequent stripe calculation
thus ensuring no single drive failure causes catastrophic data loss.
RAID 6 generates two parity chunks and diversii es each across a different physical disk. This dou-
ble parity system protects against a double disk drive fault. As disk drives become larger and larger,
there is a signii cant chance that before the failed data can be repaired a second failure will occur.
RAID 5 and RAID 6 become more space efi cient on larger sets of disk drives. A RAID 5 disk set
using seven data drives and one parity drive will consume less relative space than a disk set using
three data drives and one parity drive.
Each of these RAID sets represents a failure domain. That is to say, failures within the domain
affect the entire dataset hosted by a given failure domain. Large failure domains can also incur a
performance penalty when calculating the parity bits. In a four-disk RAID 5 set, only three data
drives are accessed for parity calculation. Given an eight-disk RAID set, seven drives are accessed.
You can combine RAID types into the same volume. Striping or concatenating several RAID 5 disk
sets enables the use of smaller failure domains while increasing the potential size of a given volume.
A striped, mirrored volume is called RAID 1+0 (or simply RAID 10). This RAID construct can per-
form extremely well at the cost of available capacity.
Many storage controllers monitor how RAID sets are accessed. Using a RAID 10 dataset as an
example, several read requests sent to a given mirrored drive pair will be serviced by the drive with
the least pending work. This work-based access enables RAID sets to perform reads more rapidly
than writes. We will cover much more about the effects of RAID on I/O performance in the Disk
Drive Performance section of this chapter.
SQL Server and the Windows I/O Subsystem
Microsoft SQL Server is an application that utilizes the Windows I/O subsystem. Rather than cov-
ering the minutia of how SQL Server reads and writes from the NTFS i le system, we are going to
explore the specii c Windows I/O systems that will report errors to the Windows event logs. This
should aid you in troubleshooting many storage errors.
 
 
Search WWH ::




Custom Search