APPARATUS, SYSTEM, AND METHOD FOR KEY-VALUE POOL IDENTIFIER ENCODING
6 Assignments
0 Petitions
Accused Products
Abstract
Apparatuses, systems, and methods are disclosed for a key-value store. A method includes encoding a key of a key-value pair into a logical address of a sparse logical address space for a non-volatile medium. A method includes mapping a logical address to a physical location in the non-volatile medium. A method includes storing a value of a key-value pair at a physical location.
-
Citations
54 Claims
-
1-14. -14. (canceled)
-
15. An apparatus comprising:
-
a key-value mapping module configured to encode a key of a key-value pair into a key address portion of a logical address of a sparse logical address space for non-volatile storage media; a pool module configured to encode a pool identifier for the key-value pair into a value address portion of the logical address, the value address portion having a number of bits such that the value address portion addresses at least a maximum size key-value pair value; and a logical-to-physical translation layer configured to map the logical address to a location of at least a portion of the value of the key-value pair in the non-volatile storage media. - View Dependent Claims (16)
-
-
17-25. -25. (canceled)
-
26. A method comprising:
-
mapping a key of a key-value pair to a slot within a sparse logical address space of non-volatile memory media; encoding a pool identifier for the key-value pair as an offset for the key-value pair within the slot; and determining a logical address for the key-value pair, the logical address associated with the slot and the offset. - View Dependent Claims (27, 28, 30)
-
-
29. (canceled)
-
31. A method comprising:
-
encoding a key of a key-value pair into a logical address within a sparse logical address space for a non-volatile medium; mapping the logical address to a physical location on the non-volatile medium; and storing a value of the key-value pair at the physical location. - View Dependent Claims (32, 33, 34, 35, 36, 37, 38, 39)
-
-
40. An apparatus comprising:
-
a key-value mapping module configured to determine a logical address for a key-value pair based on a key of the key-value pair in response to a key-value command; an exists module configured to determine whether data for the logical address is stored in a non-volatile device based on a logical-to-physical address mapping structure for the non-volatile device; and a device interface module configured to translate the key-value command to one or more primitive storage operations for the non-volatile device to satisfy the key-value command. - View Dependent Claims (41, 42, 43, 44, 45, 46, 47)
-
-
48. An apparatus comprising:
-
means for mapping a key of a key-value pair to a logical address for a non-volatile memory medium using a known transform; means for mapping logical addresses for the non-volatile memory medium to physical locations in the non-volatile memory medium; and means for writing a value of the key-value pair and associated key-value metadata to the physical location. - View Dependent Claims (49, 50)
-
-
51. A computer program product comprising a computer readable storage medium storing computer usable program code executable to perform operations, the operations comprising:
-
hashing keys of key-value pairs into key address portions of logical addresses of a sparse logical address space for a non-volatile memory device; dividing the logical addresses into the key address portion and a value address portion, the value address portions configured to segment the sparse logical address space into contiguous data ranges for the key-value pairs; and maintaining a logical-to-physical address mapping structure mapping the logical addresses to physical locations in the non-volatile memory device. - View Dependent Claims (52, 53, 54)
-
Specification