...
The properties of the B+ tree is summarized below -
- Keys in the system are (Secondary Key Blob) to (Primary Key Hash) mappings called
...
- BtreeEntry's
...
- Smallest non-Root node contains at least mininnerslots entries
...
- (4)
- Largest node contains at most innerslotmax entries
...
- (8)
- Nodes are allocated as RAMCloud
...
- objects
- Keys are sorted within a
...
- nodes
- Inner Node Keys refer to the rightmost leaf key when traversing the subtree NodeId pointer.
Variable-Sized Nodes
IndexBtree::Node implements the base class for the inner and leaf nodes of the B+ tree. The main responsibility of the base class is to abstract the complexity of storing variable-sized blobs in a RAMCloud Buffer and provide a vector-like API with set/insert/get/erase operations. The semantics of the data and how to arrange the items within the logical array are determined by the IndexBtree class.
...