×

Cloud storage system with distributed metadata

  • US 8,533,231 B2
  • Filed: 08/12/2011
  • Issued: 09/10/2013
  • Est. Priority Date: 08/12/2011
  • Status: Active Grant
First Claim
Patent Images

1. A computer implemented method for avoiding single metadata server bottlenecks on processing cloud storage system (CSS) object metadata, the computer executing the following operations:

  • dividing a metadata storage for a cloud storage system between Object metadata that encodes information on an object and versions of the object and Chunk metadata that tracks the locations of chunks;

    identifying a reference to each chunk in the object metadata using a globally unique permanent chunk identifier which is never re-used to identify a different payload;

    maintaining the CSS object metadata in a shared global name space, wherein the CSS object metadata is distributed over a plurality of object metadata servers (OMDS);

    wherein one or more Enhanced Chunk Servers (ECS) or one or more Chunk Metadata Servers (CMDS) encode a chunk as a file named based upon a chunk class of storage and the permanent chunk identifier, wherein data of the file holds a compressed payload for a respective chunk as data, and the metadata of the file encodes the identifiers of zero or more other ECSs known to hold the payload for the respective chunk;

    wherein one of the ECSs will acknowledge each valid put of a chunk with a chunk cookie that encodes the permanent chunk identifier for the chunk, the length of the chunk data after compression and context information supplied by a Cloud Storage Access Module (CSAM), usable by an OMDS to validate a commit of the object; and

    wherein an ECS that receives a request to put a chunk that is identified with a deferred chunk identifier will;

    validate that a checksum encoded in the deferred chunk identifier is valid;

    determine the permanent chunk identifier for the chunk payload;

    store the chunk under the permanent chunk identifier, responsive to determining that the permanent chunk identifier is not already present; and

    provide a chunk cookie as an acknowledgement.

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