Scalable distributed object management in a distributed fixed content storage system
First Claim
Patent Images
1. A method of maintaining fixed-content objects in a storage system, comprising:
- receiving a fixed-content object to be stored in accordance with information storage management policies;
storing the fixed-content object to a first storage component;
storing object management data associated with the fixed-content object to a first object management component;
identifying at the first object management component that an object management routine associated with the first management component is authorized to make changes to object management data associated with the fixed-content object;
storing the fixed-content object to at least a second storage component;
storing the object management data associated with the fixed-content object to at least a second object management component;
identifying at the second object management component that the object management routine associated with the first object management component is authorized to make changes to the object management data associated with the fixed-content object;
identifying at the second object management component that the object management routine associated with the second object management component is authorized to provide information related to the fixed-content object, but is not authorized to make changes to the object management data associated with the fixed-content object;
identifying at the first object management component that the object management routine associated with the second object management component is authorized to provide information related to the fixed-content object, but is not authorized to make changes to the object management data associated with the fixed-content object;
after detecting a failure in communication between the first object management component and the second object management component, identifying at the second object management component that an object management routine associated with the second object management component is authorized to make changes to the object management data associated with the fixed-content object; and
after detecting restoration of communication between the first object management component and the second object management component, synchronizing the first object management component and the second object management component so that only one of the object management components is authorized to make changes to the object management data associated with the fixed-content object.
3 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for the management of the placement of immutable fixed-content objects in a distributed, multi-site, multi-tier non-volatile storage hierarchy consisting of a plurality of storage media connected together over networks of varying bandwidth where the computing, storage, and network resources are subject to failure. The disclosure provides for scalability, performance, and robustness by distributing the object placement management tasks amongst a plurality of computing resources and eliminating the need for global synchronization or locking amongst said computing resources.
-
Citations
44 Claims
-
1. A method of maintaining fixed-content objects in a storage system, comprising:
-
receiving a fixed-content object to be stored in accordance with information storage management policies; storing the fixed-content object to a first storage component; storing object management data associated with the fixed-content object to a first object management component; identifying at the first object management component that an object management routine associated with the first management component is authorized to make changes to object management data associated with the fixed-content object; storing the fixed-content object to at least a second storage component; storing the object management data associated with the fixed-content object to at least a second object management component; identifying at the second object management component that the object management routine associated with the first object management component is authorized to make changes to the object management data associated with the fixed-content object; identifying at the second object management component that the object management routine associated with the second object management component is authorized to provide information related to the fixed-content object, but is not authorized to make changes to the object management data associated with the fixed-content object; identifying at the first object management component that the object management routine associated with the second object management component is authorized to provide information related to the fixed-content object, but is not authorized to make changes to the object management data associated with the fixed-content object; after detecting a failure in communication between the first object management component and the second object management component, identifying at the second object management component that an object management routine associated with the second object management component is authorized to make changes to the object management data associated with the fixed-content object; and after detecting restoration of communication between the first object management component and the second object management component, synchronizing the first object management component and the second object management component so that only one of the object management components is authorized to make changes to the object management data associated with the fixed-content object. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method of managing synchronization of one or more attributes corresponding to a stored fixed-content object, comprising:
-
storing a fixed-content object in at least a first storage component and a second storage component, wherein the fixed-content object stored at the second storage component is a copy of the fixed-content object stored at the first storage component; storing, at a first object management component, object-management-information that identifies the first object management component as a primary object management component for the fixed-content object and at least a second object management component as a secondary object management component for the fixed-content object; storing, at the second object management component, object-management-information that identifies the first object management component as the primary object management component for the fixed-content object and the second object management component as the secondary object management component for the fixed-content object; detecting that the first object management component is no longer accessible by the second object management component; and modifying the object-management-information stored at the second object management component to identify the second object management component as a primary object management component for the fixed-content object. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28)
-
-
29. A system of maintaining objects in a distributed storage system, comprising:
-
a plurality of distributed storage nodes that store objects; a plurality of distributed storage management nodes in communication with the storage nodes over a network, the storage management nodes configured to maintain management information about the stored objects; wherein a first storage management node is configured to fulfill requests to change storage management information about an object and other storage management nodes are configured to forward requests to change storage management information about the object to the first storage management node; wherein a second storage management node is configured to fulfill requests to change storage management information about the object upon detecting that the first storage management node is unreachable; and wherein the first storage management node is configured to synchronize with the second storage management node upon detecting that the second storage management node is configured to receive requests from other storage management nodes. - View Dependent Claims (30, 31)
-
-
32. A method of maintaining fixed-content objects in a storage system, comprising:
-
receiving a fixed-content object to be stored in accordance with information storage management policies; storing the fixed-content object to a plurality of storage components; storing object management data associated with the fixed-content object to a plurality of object management components; identifying at the plurality of object management components that the object management routine associated with any of the plurality of object management component is authorized to provide information related to the fixed-content object, but only an object management routine associated with a first object management component is authorized to make changes to the object management data associated with the fixed-content object; and after detecting the first object management component is no longer accessible, identifying at one or more of the remaining plurality of object management components that an object management routine associated with a second object management component is authorized to make changes to the object management data associated with the fixed-content object. - View Dependent Claims (33, 34, 35, 36, 37)
-
-
38. A method of maintaining fixed-content objects in a storage system, comprising:
-
receiving a fixed-content object to be stored in accordance with information storage management policies; storing the fixed-content object to a plurality of storage components; storing object management data associated with the fixed-content object to a plurality of object management components; identifying at the plurality of object management components that the object management routine associated with any of the plurality of object management component is authorized to provide information related to the fixed-content object, but only an object management routine associated with a first object management component is authorized to make changes to the object management data associated with the fixed-content object; and identifying at the plurality of object management components that only an object management routine associated with a second object management component is authorized to make changes to the object management data associated with the fixed-content object after determining that it is not optimal to use the first object management component to make changes to the object management data.
-
-
39. A computer storage medium having stored therein instructions for causing a processor to execute a method of maintaining fixed-content objects in a storage system, comprising:
-
receiving a fixed-content object to be stored in accordance with information storage management policies; storing the fixed-content object to a first storage component; storing object management data associated with the fixed-content object to a first object management component; identifying at the first object management component that an object management routine associated with the first management component is authorized to make changes to object management data associated with the fixed-content object; storing the fixed-content object to at least a second storage component; storing the object management data associated with the fixed-content object to at least a second object management component; identifying at the second object management component that the object management routine associated with the first object management component is authorized to make changes to the object management data associated with the fixed-content object; identifying at the second object management component that the object management routine associated with the second object management component is authorized to provide information related to the fixed-content object, but is not authorized to make changes to the object management data associated with the fixed-content object; identifying at the first object management component that the object management routine associated with the second object management component is authorized to provide information related to the fixed-content object, but is not authorized to make changes to the object management data associated with the fixed-content object; after detecting a failure in communication between the first object management component and the second object management component, identifying at the second object management component that an object management routine associated with the second object management component is authorized to make changes to the object management data associated with the fixed-content object; and after detecting restoration of communication between the first object management component and the second object management component, synchronizing the first object management component and the second object management component so that only one of the object management components is authorized to make changes to the object management data associated with the fixed-content object. - View Dependent Claims (40, 41, 42, 43, 44)
-
Specification