Raid (Redundant array of Inexpensive disks) technology is used for storing same data in multiple disk drives and increase performance or reliability of the data storage. Raid consist of two or more disk drives which works in parallel. There are six different levels of Raid to which data is distributed. Raid can be used for three different purposes capacity, security and performance.
Raid 6 offers significant added protection among all the raid levels. This level of Raid used block-level striping and having a high tendency of fault tolerance in case of two drive failures. Double distributed parity is the main key source for handling failure up to two drives. Parity is the error detection process used to provide fault tolerance in a data set. In Raid 6 we can retrieve data with the help of parity calculations. Parity can be calculated through XOR operation of the data across the stripes. This technique is reserved up to Raid 5, whereas in Raid 6 Double distributed parity is used to avoid fault tolerance up to two disk drives. It takes more time in rebuilding the array without loosing the data and increases the data reliability. It creates two parity block for each data block.
The Raid 6 configuration is complex to implement as it has to calculate two parity data for each data block. First parity is calculated by XOR operation over two data stripes whereas dual parity is calculated by Galois field (A field that contains finite numbers of elements). It can also be calculated through Reed Solomon codes (A block based error correcting codes used in storage devices, it’s encoder takes a block of data and adds an extra redundant bit to it for the errors which occurred during the transmission or storage of data). Raid 6 is good for the systems that combines efficient storage with excellent securities and decent performance.
Why Raid 6..?
Instantly, we have all the possible tools by which we can assume that we retrieve our data from a disk, but what are the possibilities if we lost data when read/write operations is going on. In such scenario we required RAID 6, which used a phenomenon by which the data of two concurrent drives would be recovered.
In the most frequent cases of a second drive failure, it is recorded that drive fails during reconstruction of a failed drive. The write operation uses higher resources than any other Raid levels. This is why one extra parity disk is required every time to avoid drive failure in Raid 6. The write operation is generally time taking because of parity calculations.
How parity works..?
Parity protection is the usual technique for authentic data storage, on the devices that may fail, like hard drives, servers, etc. Computation of parity, use some algebraic tactics which may solve easily all the parity calculation, specifically in dual parity calculation.
Single parity can actually be calculated as combining the values of the data stripes with the exclusive-or (XOR) operator.
ie: Parity(P) = a⊕ b ⊕ c ⊕ d ⊕ e
Here ‘D’ represents a Data block, ‘P’ represents Parity of data and ‘Q’ represents Double parity of data. P can be calculated by applying an XOR operation on as shown above.
Double parity can be calculated be Reed-Solomon coding algorithm.
Q0 = GF(D0) ⊕ GF(D1) ⊕ GF(D2)
Q1 = GF(D3) ⊕ GF(D4) ⊕ GF(D5)
Q2 = GF(D6) ⊕ GF(D7) ⊕ GF(D8)
Q3 = GF(D9) XOR GF(D10) XOR GF(D11)
Where Raid 6 can be used?
· File & Application servers
· E-mail & Web services
· Database servers
· Cloud servers
Raid 6 is quite expensive. It requires a sophisticated hardware controller along with a large number of hard drives.