Apparatus and method for using fields in n-space translation of storage requests
AssigneeSkyera, LLC
InventorsRADOSLAV DANILAK, Ladislav Steffko, Qi Wu
Life of this patent
Estimating the term…
Abstract
A translation system can translate a request having multiple fields to a physical address using the fields as indexes to a multi-dimensional graph. A field or portion of a field can represent a location along an axis. When combined together, the fields can represent a point in n-space, where n is the number of axes. In some embodiments, a nearest neighbor calculation can be sufficient along an axis. Therefore, a point in n-space defined by the fields can be translated along an axis until a nearest neighbor entry is determined. When the entry is determined, the entry can be accessed to determine a correct response to the translation request.
Claims20
One or more non-transitory computer-readable storage media having collectively stored thereon executable instructions that, when executed by one or more processors of a computer system, cause the computer system to at least:
- receive a request that includes a set of fields with associated values, wherein at least a subset of the set of fields are defined as along a set of axes, wherein a set of values of the subset of the set of fields define a point in multidimensional space based at least in part on the set of axes;
- traverse a data structure representing the set of axes based at least in part on the set of values;
- determine that an entry in the data structure represents the point in n-space defined by the subset of the set of values;
- and
- access the entry to return data in response to the request.
A server computer comprising:
- one or more computing resources having one or more processors and memory including executable instructions that, when executed by the one or more processors, cause the one or more processors to implement at least:
- a storage system comprising a set of physical locations;
- a translation system configured to form a translation of a logical storage location to a physical storage location by:
- determining a set of fields that describe a range of logical storage locations;
- mapping a subset of the set of fields to a set of axes in n-space, where n is a number of fields in the subset of the set of fields;
- storing a physical location of data accessible by a logical point defined by a set of field values mapped to corresponding axes within the set of axes;
- and
- providing the physical location of the data when given the set of field values that match the logical point defined by the set of field values mapped to the corresponding axes within the set of axes.
A computer implemented method, comprising:
- receiving a logical storage request that includes a set of field values describing a logical location in a storage system, wherein at least a subset of the set of field values correspond to values along a set of axes that define a point in n-dimensional space where n is a number of field values in the subset of the set of field values;
- traversing a data structure representing the set of axes based at least in part on the subset of the set of field values;
- determining that an entry in the data structure represents the point in n-space defined by the subset of the set of field values;
- and
- accessing the entry to determine a physical location of data in the storage system.
Dependencies are inferred from the claim text.