Method and System for Dynamically Replicating Data Within A Distributed Storage System
First Claim
1. A computer-implemented method for replicating objects within a distributed storage system, wherein the distributed storage system includes a plurality of storage sub-systems, comprising:
- at a first storage sub-system having one or more processors and memory storing one or more programs for execution by the one or more processors,receiving from a client a first client request for an object that is not present in the first storage sub-system;
identifying a second storage sub-system as having a replica of the requested object, wherein the requested object includes content and metadata;
submitting an object replication request for the requested object to the second storage sub-system;
independently receiving the content and metadata of the requested object from the second storage sub-system;
generating a new replica of the object at the first storage sub-system using the received metadata and content; and
returning the metadata of the new replica of the object to the client.
2 Assignments
0 Petitions
Accused Products
Abstract
A server computer at a first storage sub-system of a distributed storage system receives from a client a first client request for an object. If the object is not present in the first storage sub-system, the server computer identifies a second storage sub-system of the distributed storage system as having a replica of the requested object, the requested object including content and metadata. The server computer submits an object replication request for the requested object to the second storage sub-system and independently receives the content and metadata of the requested object from the second storage sub-system. The server computer generates a new replica of the object at the first storage sub-system using the received metadata and content and returns the metadata of the new replica of the object to the client.
-
Citations
20 Claims
-
1. A computer-implemented method for replicating objects within a distributed storage system, wherein the distributed storage system includes a plurality of storage sub-systems, comprising:
at a first storage sub-system having one or more processors and memory storing one or more programs for execution by the one or more processors, receiving from a client a first client request for an object that is not present in the first storage sub-system; identifying a second storage sub-system as having a replica of the requested object, wherein the requested object includes content and metadata; submitting an object replication request for the requested object to the second storage sub-system; independently receiving the content and metadata of the requested object from the second storage sub-system; generating a new replica of the object at the first storage sub-system using the received metadata and content; and returning the metadata of the new replica of the object to the client. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
10. A computer system for replicating objects within a distributed storage system, wherein the distributed storage system includes a plurality of storage sub-systems, comprising:
-
one or more processors; memory for storing one or more programs, wherein the one or more processors are configured to execute at a first storage sub-system the one or more programs including instructions for; receiving from a client a first client request for an object that is not present in the first storage sub-system; identifying a second storage sub-system as having a replica of the requested object, wherein the requested object includes content and metadata; submitting an object replication request for the requested object to the second storage sub-system; independently receiving the content and metadata of the requested object from the second storage sub-system; generating a new replica of the object at the first storage sub-system using the received metadata and content; and returning the metadata of the new replica of the object to the client. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A non-transitory computer readable storage medium storing one or more programs configured for execution by a first storage sub-system having one or more processors and memory storing one or more programs for execution by the one or more processors in association with a distributed storage system that includes a plurality of storage sub-systems, the one or more programs comprising instructions for:
-
receiving from a client a first client request for an object that is not present in the first storage sub-system; identifying a second storage sub-system as having a replica of the requested object, wherein the requested object includes content and metadata; submitting an object replication request for the requested object to the second storage sub-system; independently receiving the content and metadata of the requested object from the second storage sub-system; generating a new replica of the object at the first storage sub-system using the received metadata and content; and returning the metadata of the new replica of the object to the client. - View Dependent Claims (20)
-
Specification