Management of object mapping information corresponding to a distributed storage system
First Claim
1. A method of managing information associated with a stored object, the object represented by a key, the information including a keymap corresponding to the mapping of the key to one or more locators, each of the one or more locators associated with an instance of the object, the method comprising:
- obtaining a modification request at a keymap coordinator for modification of keymap information associated with a first key, wherein the keymap coordinator is associated with at least one keymap information source storing information mapping the first key to one or more locators;
transmitting the modification request to at least one keymap information source;
generating at least one keymap value placeholder associated with the keymap information requested to be modified, the at least one keymap value placeholder indicative of an unacknowledged request to modify keymap information associated with the first key;
initiating a storage request to a cache component associated with the keymap coordinator to store the at least one keymap value placeholder in cached keymap information associated with the first key, the cache component storing cached information associated with the at least one keymap information source;
determining whether the at least one keymap value placeholder in the cached keymap information associated with the first key may be updated with a value associated with the modification request, wherein the at least one keymap value placeholder is configured to be updated after completion of the modification request by the at least one keymap information source; and
if so, initiating an update request to the cache component to update the cached keymap information with the value associated with the modification request.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods for managing mapping information for objects maintained in a distributed storage system are provided. The distributed storage system can include a keymap subsystem that manages the mapping information according to object keys. Requests for specific object mapping information are directed to specific keymap coordinators within the keymap subsystem. Each keymap coordinator can maintain a cache for caching mapping information maintained at various information sources. To manage the cache, the keymap system can utilize information placeholders that replace previously cached keymap information while a request to modify keymap information is being processed by the information sources. Each keymap coordinator can process subsequently received keymap information read requests in the event an information placeholder is cached as the current cached keymap information.
-
Citations
24 Claims
-
1. A method of managing information associated with a stored object, the object represented by a key, the information including a keymap corresponding to the mapping of the key to one or more locators, each of the one or more locators associated with an instance of the object, the method comprising:
-
obtaining a modification request at a keymap coordinator for modification of keymap information associated with a first key, wherein the keymap coordinator is associated with at least one keymap information source storing information mapping the first key to one or more locators; transmitting the modification request to at least one keymap information source; generating at least one keymap value placeholder associated with the keymap information requested to be modified, the at least one keymap value placeholder indicative of an unacknowledged request to modify keymap information associated with the first key; initiating a storage request to a cache component associated with the keymap coordinator to store the at least one keymap value placeholder in cached keymap information associated with the first key, the cache component storing cached information associated with the at least one keymap information source; determining whether the at least one keymap value placeholder in the cached keymap information associated with the first key may be updated with a value associated with the modification request, wherein the at least one keymap value placeholder is configured to be updated after completion of the modification request by the at least one keymap information source; and if so, initiating an update request to the cache component to update the cached keymap information with the value associated with the modification request. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method of managing information associated with a stored object, the object represented by a key, the information including a keymap corresponding to the mapping of the key to one or more locators, each of the one or more locators associated with an instance of the object, the method comprising:
-
obtaining a read request at a keymap coordinator for keymap information associated with a first key, wherein the keymap coordinator is associated with at least one keymap information source storing information mapping the first key to one or more locators; obtaining cached keymap information, at the keymap coordinator from an associated cache component, corresponding to the read request; determining whether the obtained cached keymap information includes a keymap value placeholder, wherein a keymap value placeholder included within the cached keymap information is indicative of a prior unacknowledged request to modify keymap information associated with the first key in the at least one keymap information source and wherein the at least one keymap value placeholder is configured to be updated after completion of the modification request by the at least one keymap information source; and if not, providing the obtained cached keymap information responsive to the read request. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A system of managing information associated with a stored object, the object represented by a key, the information including a keymap corresponding to the mapping of the key to one or more locators, each of the one or more locators associated with an instance of the object, the system comprising:
-
a keymap coordinator that obtains a read request associated with a first key wherein the keymap coordinator is associated with at least one keymap information source storing keymap information mapping the first key to one or more locators; and a cache component that stores cached keymap information associated with the at least one keymap information source, wherein the cache component obtains a request from the keymap coordinator for cached keymap information associated with the first key; the keymap coordinator further operable to; obtain the cached keymap information associated with the first key stored by the cache component; determine whether the obtained cached keymap information includes a keymap value placeholder, wherein the keymap value placeholder is indicative of a previous modification request that has not been satisfied, wherein the previous modification request corresponds to a previous request to the at least one keymap information source to modify keymap information associated with the first key; if not, provide the obtained cached keymap information responsive to the read request; and if so, process the read request in view of the keymap value placeholder. - View Dependent Claims (19, 20, 21, 22, 23, 24)
-
Specification