Reduction of write amplification in object store
First Claim
1. A method of managing a storage system having one or more storage devices, the method comprising:
- receiving a request to access, in a tiered data structure stored at least in part in the one or more storage devices of the storage system, a data object and one or more attributes of the data object, wherein the tiered data structure is stored in the storage system, the request including a first key value corresponding to the data object and one or more second key values corresponding to the one or more attributes of the data object; and
processing the access request, including;
generating one or more modified key values for the one or more attributes of the data object in accordance with at least a portion of the first key value, each modified key value differing from but corresponding to a respective second key value of the one or more second key values in the received request;
accessing a plurality of tree entries in one or more leaf nodes of the tiered data structure, the plurality of tree entries comprising a data object entry that includes the first key value and a reference to the data object and further comprising one or more attribute entries corresponding to the data object, each attribute entry including a respective attribute of the one or more attributes of the data object and the modified key value corresponding to the respective attribute; and
accessing the data object in a data node of the tiered data structure;
including, after generating the one or more modified key values, accessing, in the one or more storage devices of the storage system, a respective attribute of the data object, requested by the received request, in an attribute entry having the modified key value corresponding to the respective attribute.
2 Assignments
0 Petitions
Accused Products
Abstract
A method of managing a storage system having one or more storage devices includes receiving a request to access, in a tiered data structure, a data object and one or more attributes of the data object and processing the access request. The request includes a first key value for the data object and respective second key values for the one or more attributes of the data object. Modified key values for the attributes of the data object are generated in accordance with at least a portion of the first key value and used to access tree entries for the data object attributes in one or more leaf nodes of the tiered data structure. A tree entry for the data object is also accessed from the same set of one or more leaf nodes.
40 Citations
20 Claims
-
1. A method of managing a storage system having one or more storage devices, the method comprising:
-
receiving a request to access, in a tiered data structure stored at least in part in the one or more storage devices of the storage system, a data object and one or more attributes of the data object, wherein the tiered data structure is stored in the storage system, the request including a first key value corresponding to the data object and one or more second key values corresponding to the one or more attributes of the data object; and processing the access request, including; generating one or more modified key values for the one or more attributes of the data object in accordance with at least a portion of the first key value, each modified key value differing from but corresponding to a respective second key value of the one or more second key values in the received request; accessing a plurality of tree entries in one or more leaf nodes of the tiered data structure, the plurality of tree entries comprising a data object entry that includes the first key value and a reference to the data object and further comprising one or more attribute entries corresponding to the data object, each attribute entry including a respective attribute of the one or more attributes of the data object and the modified key value corresponding to the respective attribute; and accessing the data object in a data node of the tiered data structure; including, after generating the one or more modified key values, accessing, in the one or more storage devices of the storage system, a respective attribute of the data object, requested by the received request, in an attribute entry having the modified key value corresponding to the respective attribute. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A host system, the system comprising:
-
an interface for operatively coupling to a storage system having one or more storage devices; one or more hardware processors; and memory storing one or more programs, which when executed by the one or more processors, cause the host system to perform operations comprising; receiving a request to access, in a tiered data structure that is stored in the storage system, a data object and one or more attributes of the data object, the request including a first key value corresponding to the data object and one or more second key values corresponding to the one or more attributes of the data object; generating one or more modified key values for the one or more attributes of the data object in accordance with at least a portion of the first key value, each modified key value differing from but corresponding to a respective second key value of the one or more second key values in the received request; and accessing, in the tiered data structure, a data node storing the data object and a plurality of tree entries in one or more leaf nodes, the plurality of tree entries comprising a data object entry that includes the first key value and a reference to the data object, and further comprising one or more attribute entries corresponding to the data object, each attribute entry including a respective attribute of the one or more attributes of the data object and the modified key value corresponding to the respective attribute; including, after generating the one or more modified key values, accessing, in the one or more storage devices of the storage system, a respective attribute of the data object, requested by the received request, in an attribute entry having the modified key value corresponding to the respective attribute. - View Dependent Claims (12, 13, 14, 15)
-
-
16. A storage system, the system comprising:
-
an interface for operatively coupling to a host system; one or more processors; and controller memory storing one or more programs, which when executed by the one or more processors, cause the storage system to perform operations comprising; receiving a request from the host system to access, in a tiered data structure that is stored in the storage system, a data object and one or more attributes of the data object, the request including a first key value corresponding to the data object and one or more respective second key values corresponding to each of the one or more attributes of the data object; generating one or more modified key values for the one or more attributes of the data object in accordance with at least a portion of the first key value, each modified key value differing from but corresponding to a respective second key value of the one or more second key values in the received request; and accessing, in the tiered data structure, a data node storing the data object and a plurality of tree entries in one or more leaf nodes, the plurality of tree entries comprising a data object entry that includes the first key value and a reference to the data object, and further comprising one or more attribute entries, each attribute entry including a respective attribute of the one or more attributes of the data object and the modified key value corresponding to the respective attribute; including, after generating the one or more modified key values, accessing, in the tiered data structure, a respective attribute of the data object, requested by the received request, in an attribute entry having the modified key value corresponding to the respective attribute. - View Dependent Claims (17, 18, 19, 20)
-
Specification