BP-Tree: Overcoming the Point-Range Operation Tradeoff for In-Memory B⁺-trees
Author(s)
Li, Amanda
DownloadThesis PDF (643.4Kb)
Advisor
Xu, Helen
Leiserson, Charles E.
Terms of use
Metadata
Show full item recordAbstract
This thesis presents the BP-tree, an efficient concurrent key-value store based on the B⁺-tree, that uses large leaf nodes to optimize for range-query performance without sacrificing update speed by using large leaf nodes. B⁺-trees are a fundamental data structure for implementing in-memory indexes in databases and storage systems. B⁺- trees support both point operations (i.e., inserts and finds) and range operations (i.e., iterators and maps). There is an inherent tradeoff between point and range operations however, since the optimal node size for point operations is much smaller than the optimal node size for range operations. To avoid any slowdown in point operations, this thesis introduces a novel insert-optimized array called the buffered partitioned array (BPA) to efficiently organize data in leaf nodes.
Using the buffered partitioned array, the BP-tree overcomes the decades-old tradeoff between point and range operations in B⁺-trees. Experiments show that on 48 hyperthreads, the BP-tree supports slightly faster (by about 1.1×) point operations than the best-case configuration for B+-trees for point operations while supporting between 1.4×–1.7× faster range operations. On workloads generated from the Yahoo! Cloud Serving Benchmark (YCSB), the BP-tree is faster (by about 1.1×) on all point operation workloads compared to the B⁺-tree, and slower (by about 1.15×) on the short range operation workload compared to the B⁺-tree. Furthermore, this work extends the YCSB to include large scan and map workloads, commonly found in database applications, and find that the BP-tree is between 1.2×–1.4× faster than the B⁺-tree on these workloads. This thesis contains my joint work with Helen Xu, Brian Wheatman, Manoj Marneni, and Prashant Pandey.
Date issued
2023-02Department
Massachusetts Institute of Technology. Department of Electrical Engineering and Computer SciencePublisher
Massachusetts Institute of Technology