Patent ID: 7433998

Claim:
A storage array, comprising: multiple storage drives; one or more logical volumes stored within the storage drives, wherein each storage drive comprises, metadata; a plurality of data blocks stored therein, wherein the data blocks of the multiple storage drives are saved to the multiple storage drives according to a redundant array of independent disks (RAID) storage methodology; for each of the one or more logical volumes, a self-describing function associated with the logical volume included within the metadata of each storage drive, wherein each of the one or more self-describing functions of each storage drive is operable to receive as an input an identifier of a data block and return as an output an identifier concerning the physical location of the data block, and wherein the identification of the physical location of the data block does not require reference to mapping information stored at a storage controller; wherein each self-describing function of each of the multiple storage drives comprises: an index function that returns as an output an index number associated with an identified one of the storage drives of the storage array; and an offset function that returns as an output an offset number that identifies the location of a data block within the identified one of the storage drives of the storage array; and wherein the self-describing function associated with one of the one or more logical volumes in each storage drive of the storage array is identical and is implemented in a scriptable programming language.