×

Array-based distributed storage system with parity

  • US 8,510,370 B2
  • Filed: 02/26/2008
  • Issued: 08/13/2013
  • Est. Priority Date: 02/26/2008
  • Status: Active Grant
First Claim
Patent Images

1. An array-based distributed storage system, comprising:

  • a plurality of clients that each include a communication interface,a plurality of storage servers that each include a communication interface,a computer network interconnecting the plurality of clients and the plurality of storage servers through their respective communication interfaces;

    storage for storing a map defining, for each write request for a data block, which of the plurality of storage servers is a data storage server and which of the plurality of storage servers is a parity server;

    wherein a client determines, for a write request for a particular data block, the data storage server for the particular data block in accordance with the map and transmits the write request for the particular data block to the determined data storage server; and

    wherein each storage server comprises;

    selection logic operative to enable data storage logic and relaying logic if the selection logic determines, in accordance with the map, that a particular received data block is to be stored on the storage server and operative to enable parity logic if the selection logic determines, in accordance with the map, that the particular received data block is to be used to generate a parity block to be stored on the storage server;

    wherein the data storage logic is operative to store the particular received data block at the storage server in response to a determination by the selection logic that the particular received data block is to be stored on the storage server, andwherein the parity logic is operative to generate and store on the storage server a parity block using the particular received data block in response to a determination by the selection logic that the particular received data block is to be used to generate a parity block to be stored on the storage server; and

    wherein the relaying logic is operative to relay a copy of the particular received data block to the parity server for the particular received data block in accordance with the map in response to a determination by the selection logic that the particular received data block is to be stored on the storage server.

View all claims
  • 10 Assignments
Timeline View
Assignment View
    ×
    ×