| CPC G06F 12/1018 (2013.01) | 20 Claims |

|
1. A system, comprising:
a distributed storage architecture including a plurality of worker nodes managing distributed storage comprised of storage devices hosted by the plurality of worker nodes; and
a worker node of the distributed storage architecture owning key value pairs of a key value store hosted within the distributed storage, wherein keys of the key value pairs are stored within a log structured merge tree, wherein the worker node causes a processor to:
perform merge operations during a re-compaction process upon the log structured merge tree to merge keys down to lower levels of the log structured merge tree to re-compact the keys, wherein the merge operations build a sorted log within the log structured merge tree using key insert operations to insert the keys into the sorted log without moving storage locations of values paired with the keys, wherein the sorted log excludes the values, wherein the values are retained in an unmodified state as part of the merge operation;
build in-memory hash entries for each bin of keys within the sorted log using a hash building process implemented during the merge operations, wherein an in-memory hash entry for a prefix of keys within a bin is used to identify a starting location of the bin within the log structured merge tree for accessing keys within the bin from the log structured merge tree;
in response to receiving a key request for a key within the bin, identify the in-memory hash entry for the bin to determine the starting location of the bin within the log structured merge tree; and
perform a search of a subset of the sorted log for locating the key within the bin, wherein the search starts at the starting location specified by the in-memory hash entry.
|