F2B+-tree: A Flash-aware B+-tree Using the Bloom Filter
July 31, 2020 | Vol.6, No.7 | PP. 21-28 | PDF
AUTHORS:
Sungchae Lim, 02748 Dept. of Computer Science, Dongduk Women’s Univ., Wolgok-dong, Seongbuk-gu, Seoul, Korea
KEYWORDS:
Bloom Filter, B+-tree, Database System, Flash Memory, High-performance Index
Abstract
As the price per bit of flash storage is rapidly decreasing, diverse research has been done to devise flash-aware B+-tree indexes. Since the original B+-tree structure was devised for indexing data records stored in hard disk drives, a naive transplant of the B+-tree into flash may degrade index performance. This is because flash storage suffers from significant performance disparity between update operations and read/write operations. To solve the problem, we adopt the probabilistic index structure, called the Bloom filter. By using the Bloom filter, we make some free space in each node whose child nodes are leaf nodes. We refer to such a node as the BF node. In the free space of a BF node, our proposed F2B+-tree stores update logs in order to save histories of key inserts or deletes that have arisen in leaf nodes. Since B+-tree's nodes except for leaf nodes are usually manipulated in a memory buffer pool, the F2B+-tree can considerably reduce the amount of physical updates on flash storage. Additionally, we cluster a set of sibling leaf nodes in a flash block such that garbage collection can be cheaply performed without full-merges or half-merges. As a result, the F2B+-tree can prevent unpredictable fluctuations in performance of flash-based databases, which could be caused by background-mode actions needed for garbage collection.
APJCRI
The purpose of this journal is to share and exchange the results of recent research by Asia-Pacific national researchers, and the purpose of the project is to publish the results of convergence research with the humanities and social sciences, including advanced research in specific fields.