[Jump to code hierarchy]

Array code

Alternative names: RAID code, Disk array code.

Description

Matrix code over \(\mathbb{F}_q\) designed for use in distributed storage, with the first such application being a RAID-type array of hard-drives such that information is protected against erasure of one or more hard drives. Each column of a matrix codeword is typically treated as a single codeword coordinate via subpacketization (defined below) and represents a large data block. Array codes are denoted by \((n,k,m)\), where \(n\) is the number of nodes, \(k\) is the number of nodes needed to recover the data, and \(m\) is the column dimension of each codeword a.k.a. the subpacketization level.

Protection

Since they are designed to protect against corruption of nodes in a distributed storage network, many array codes are analyzed in terms of their erasure capabilities.

An analogue of the Hamming metric for array codes comes from counting the number of column positions in which two codewords differ. Equivalently, one may treat each length-\(m\) column as a single symbol from an alphabet of size \(q^m\); this interpretation underlies the subpacketization viewpoint. Array codes are typically \(\mathbb{F}_q\)-linear as matrix codes. In some constructions, after choosing an identification of columns with symbols from an extension field \(\mathbb{F}_{q^m}\), one also obtains an \(\mathbb{F}_{q^m}\)-linear code.

There are other notions of distance for array codes, including the rank metric and its generalization the sum-rank metric.

Notes

See [1,1][2; Ch. 14] for introductions.

Cousin

Member of code lists

References

[1]
M. Blaum, P. G. Farrell, H. C. A. van Tilborg, 1998. Array codes. Handbook of coding theory, 2 (Part 2), pp. 1855-1909.
[2]
E. Fujiwara, Code Design for Dependable Systems (Wiley, 2005) DOI
[3]
Anvin, H. Peter. “The mathematics of RAID-6.” (2007).
[4]
S. T. Position. (2009) Common raid disk data format specification. [Online]. Available: https://www.snia.org/tech activities/standards/curr standards/ddf
Page edit log

Your contribution is welcome!

on github.com (edit & pull request)— see instructions

edit on this site

Zoo Code ID: array

Cite as:
“Array code”, The Error Correction Zoo (V. V. Albert & P. Faist, eds.), 2023. https://errorcorrectionzoo.org/c/array
BibTeX:
@incollection{eczoo_array, title={Array code}, booktitle={The Error Correction Zoo}, year={2023}, editor={Albert, Victor V. and Faist, Philippe}, url={https://errorcorrectionzoo.org/c/array} }
Share via:
Twitter | Mastodon |  | E-mail
Permanent link:
https://errorcorrectionzoo.org/c/array

Cite as:

“Array code”, The Error Correction Zoo (V. V. Albert & P. Faist, eds.), 2023. https://errorcorrectionzoo.org/c/array

Github: https://github.com/errorcorrectionzoo/eczoo_data/edit/main/codes/classical/matrices/array/array.yml.