Persistent memory for key-value storage
AssigneeAlibaba Group Holding Limited
InventorPing Zhou
Life of this patent
Estimating the term…
Abstract
Using persistent memory for key-value storage is disclosed, including: receiving a put key operation including a key and a corresponding value; directly storing the key at a persistent memory media using a physical address that is determined based at least in part on the key, wherein the persistent memory media supports memory persistence and in-place updating; directly storing the value to the persistent memory media; receiving a get key operation including the key; and directly accessing the persistent memory media using the physical address that is determined based at least in part on the key to retrieve the value corresponding to the key.
Claims20
A method, comprising:
- performing a put key operation, including:
- obtaining a key and a corresponding value from the put key operation;
- determining a physical address based at least in part on the key;
- determining that a page associated with the physical address in a persistent memory media stores another key, wherein the persistent memory media supports memory persistence and in-place updating;
- selecting a new page in the persistent memory media based at least in part on a probe sequence;
- storing the key at the new page at the persistent memory media;
- storing the corresponding value at a set of pages at the persistent memory media;
- and
- storing associating data between the new page in the persistent memory media associated with storing the key and the set of pages in the persistent memory media associated with storing the corresponding value.
A system, comprising:
- a persistent memory media that supports memory persistence and in-place updating;
- and
- a processor coupled to the persistent memory media, configured to
- perform a get key operation, including to:
- obtain a key;
- determine a physical address based at least in part on the key;
- determine that a page associated with the physical address in the persistent memory media stores another key;
- select a new page in the persistent memory media based at least in part on a probe sequence;
- determine that the new page in the persistent memory media stores the key;
- and
- use associating data stored in the new page in the persistent memory media that stores the key to determine a set of pages in the persistent memory media at which a value corresponding to the key is stored.
A system, comprising:
- a persistent memory media that supports memory persistence and in-place updating;
- and
- a processor coupled to the persistent memory media, configured to:
- perform a put key operation, including to:
- obtain a key and a corresponding value;
- determine a physical address based at least in part on the key;
- determine that a page associated with the physical address in the persistent memory media stores another key;
- select a new page in the persistent memory media based at least in part on a probe sequence;
- store the key at the new page at the persistent memory media;
- store the corresponding value at a set of pages at the persistent memory media;
- and
- store associating data between the new page in the persistent memory media associated with storing the key and the set of pages in the persistent memory media associated with storing the corresponding value.
Dependencies are inferred from the claim text.