Patent ID: 8090909

Claim:
A system for implementing distributed RAID, comprising: one or more hosts; a plurality of data bank computers, each data bank coupled to each host and each of the other plurality of data banks, each data bank including: a processor; a data store; a computer readable medium comprising instructions executable to: receive a command corresponding to a first segment of a volume from a first host of the one or more hosts, wherein the volume comprises a set of segments, and the set of segments of the volume are stored on the plurality of data banks according to a data bank order, where the data bank order is a permutation of the plurality of data banks and redundancy data corresponding to a RAID level implemented in conjunction with the volume is stored on each of the plurality of data banks, such that for each segment of the volume a corresponding redundancy segment comprising the redundancy data associated with that segment of the volume does not reside on the same data bank as the corresponding segment of the volume; determine a first data bank of the plurality of data banks, wherein the first data bank corresponds to the first segment; and if the first data bank is the data bank which received the command execute the first command with respect to the first segment and if not, forward the first command to the first data bank.