Bi-directional Log-Structured Merge Tree
Bi-directional Log-Structured Merge Tree
复制标题
DOI:
10.1145/3538712.3538730
复制
发表时间:
2022-07
期刊:
影响因子:
--
通讯作者:
Xin Zhang;Qizhong Mao;Ahmed Eldawy;Vagelis Hristidis;Yihan Sun
中科院分区:
文献类型:
--
作者:
Xin Zhang;Qizhong Mao;Ahmed Eldawy;Vagelis Hristidis;Yihan Sun
The Log-Structured Merge (LSM) Tree has become a popular storage scheme for modern NoSQL and New SQL database systems. The LSM-tree scheme achieves high write throughput by first buffering writes in memory, then flushing them to the disk with sequential I/O. LSM-tree is an out-of-place structure, so the key range of a level in the tree can overlap with those of other levels. This negatively impacts range query performance, as multiple levels have to be scanned. Note that range queries are fundamental operators for other types of queries such as joins or spatiotemporal queries. To improve the read performance of LSM-trees, this paper proposes the Bi-directional LSM-tree, which differs from the classical LSM-tree in that hot records can move to higher levels to improve the overall LSM organization and benefit future range queries. The Bi-directional LSM-tree reuses the work performed during range queries to selectively generate a special type of components, called sentinel components. Our experiments show that the Bi-directional LSM-tree can save more than 10% of disk I/O compared to a standard Leveled LSM-tree.