Management of object mapping information corresponding to a distributed storage system
First Claim
1. A system for managing objects stored in a distributed storage system comprising:
- a computing device, having a processor and a memory, the computing device implementing a service interface component for managing requests associated with objects maintained by the distributed storage system;
a computing device, having a processor and a memory, the computing device implementing a keymap subsystem, the keymap subsystem obtaining requests for keymap information, wherein the keymap information corresponds to a mapping of a key associated with an object with one or more identifiers of instances of the object on the distributed storage system, the keymap subsystem including;
a plurality of managers for maintaining the keymap information, wherein a first manager maintains a first identifier of an instance of the object on the storage distributed system, wherein a second manager maintains a second identifier of an instance of the object on the distributed storage system, and wherein the first and second identifiers are distinct, andone or more keymap coordinators for processing requests associated with object keys, each keymap coordinator maintaining a cache corresponding to the keymap information, wherein the cache includes the first identifier and an indication of a difference between the first identifier and the second identifier without maintaining the second identifier;
wherein the keymap coordinators, in response to a request for the keymap information, utilize at least the first identifier and the indication of the difference between the first identifier and the second identifier to determine keymap information responsive to the request;
a computing device, having a processor and a memory, the computing device implementing one or more consistent based hashing components for generating a consistent based hashing scheme assigning the one or more keymap coordinators to ranges of hash values derived from object keys; and
a computing device, having a processor and a memory, the computing device implemented a storage node interface for interfacing with one or more storage nodes associated with the distributed storage system.
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. Additionally, the keymap coordinators can optimize cache entries by maintaining selected mapping information while identifying object sources that correspond to differences from the selected mapping information.
16 Citations
25 Claims
-
1. A system for managing objects stored in a distributed storage system comprising:
-
a computing device, having a processor and a memory, the computing device implementing a service interface component for managing requests associated with objects maintained by the distributed storage system; a computing device, having a processor and a memory, the computing device implementing a keymap subsystem, the keymap subsystem obtaining requests for keymap information, wherein the keymap information corresponds to a mapping of a key associated with an object with one or more identifiers of instances of the object on the distributed storage system, the keymap subsystem including; a plurality of managers for maintaining the keymap information, wherein a first manager maintains a first identifier of an instance of the object on the storage distributed system, wherein a second manager maintains a second identifier of an instance of the object on the distributed storage system, and wherein the first and second identifiers are distinct, and one or more keymap coordinators for processing requests associated with object keys, each keymap coordinator maintaining a cache corresponding to the keymap information, wherein the cache includes the first identifier and an indication of a difference between the first identifier and the second identifier without maintaining the second identifier; wherein the keymap coordinators, in response to a request for the keymap information, utilize at least the first identifier and the indication of the difference between the first identifier and the second identifier to determine keymap information responsive to the request; a computing device, having a processor and a memory, the computing device implementing one or more consistent based hashing components for generating a consistent based hashing scheme assigning the one or more keymap coordinators to ranges of hash values derived from object keys; and a computing device, having a processor and a memory, the computing device implemented a storage node interface for interfacing with one or more storage nodes associated with the distributed storage system. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system for managing objects stored in a distributed storage system comprising:
a computing device, having a processor and a memory, the computing device implementing; a plurality of managers for maintaining keymap information mapping a key associated with an object with one or more identifiers of instances of the object on the distributed storage system, wherein a first manager maintains a first identifier of an instance of the object on the distributed storage system, wherein a second manager maintains a second identifier of an instance of the object on the distributed storage system, and wherein the first and second identifiers are distinct; and one or more keymap coordinators for processing requests associated with object keys, each keymap coordinator maintaining a proxy cache corresponding to cached keymap information, the cached keymap information comprising the first identifier and an indication of a difference between the first identifier and the second identifier without maintaining the second identifier. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
16. A method for managing objects stored in a distributed storage system comprising:
-
obtaining a request for modifying keymap information associated with an object, the keymap information corresponds to a mapping of a key associated with an object with one or more identifiers of instances of the object on the distributed storage system, the request identifying a key associated with the object; identifying cached keymap information responsive to the request, the cached keymap information representative of a logical cache of manager components, wherein the cached keymap information includes; a first identifier of an instance of the object on the distributed storage system, wherein the first identifier is maintained by at least a first manager component, and an indication of a difference between the first identifier and a second identifier of an instance of the object on the distributed storage system, wherein the indication is not independently representative of the second identifier, and wherein the second identifier is maintained by at least a second manager component; and transmitting responsive information utilizing the cached keymap information. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25)
-
Specification