Abstract

For the past few years, flash memory has been widely used because of its prominent advantages such as fast access speed, nonvolatility, high reliability, and low power consumption. However, flash memory still has several drawbacks that need to be overcome, e.g., the erase-before-write characteristic and a limited life cycle. Among these drawbacks, the erase-before-write characteristic causes the B-tree implementation on flash memory to be inefficient because it generates many erase operations. This study introduces a novel B-tree index structure using a write pattern converter (WPCB-tree) for flash memory. A WPCB-tree can minimize the risk of data loss and can improve the performance of the B-tree on flash memory. This WPCB-tree uses some blocks of flash memory as a buffer that temporarily stores all updated nodes. When the buffer is full, a buffer block is selected by a greedy algorithm, then the node pages in the block are converted into a sequential write pattern, and finally they are written into flash memory. In addition, in the case that all key values of a leaf node are continuously inserted, the WPCB-tree does not split the leaf node. As a result, this mechanism helps the WPCB-tree reduce the number of write operations on the flash memory. The experimental results show that the proposed B-tree variant on flash memory yields a better performance than that of other existing variants of the B-tree.

Highlights

  • Flash memory is applied in various fields from integrated embedded systems, mobile devices, and personal computers to large-scale server systems because it has many positive consequences such as high-speed access, low power consumption, small size, and high reliability

  • As soon as a writing request is received from the Transit Buffer Manager (TBM), the Write Pattern Converter (WPC) gets the victim block, and converts from the random write pattern to a sequential write pattern before the data in the victim block is written into flash memory

  • Flash memory and B-tree index structures are widely used for embedded systems, personal computers, and large-scale server systems

Read more

Summary

Introduction

Flash memory is applied in various fields from integrated embedded systems, mobile devices, and personal computers to large-scale server systems because it has many positive consequences such as high-speed access, low power consumption, small size, and high reliability These advantages have lead flash memory to become a commonly used memory technology, its downsides, including erase-before-write, limited life cycle, and higher cost than a normal HDD, should not be overlooked [1,2,3,4,5]. In order to address this issue, a number of B-tree variants have been proposed These B-trees suffer from the risk of data loss or the performance degradation problem. This paper proposes a novel B-tree index structure using a mechanism of write pattern conversion which uses some flash blocks as a buffer to temporarily store updated nodes.

Flash Memory
B-Tree on Flash Memory
The Limitation of Random Write Performance
WPCB-Tree: A B-Tree Using a Write Pattern Converter
Design of the WPCB-Tree
Transit Buffer Manager
Write Pattern Converter
Insert Operation
Delete Operation
Search Operation
System Analysis
Simulation Methodology
The Performance of the WPCB-Tree with Respect to Flash Operations
The Performance of the WPCB-Tree with Respect to Time Consumption
Page Utilization
Conclusions
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call