The Community for Technology Leaders
Green Image
Issue No. 04 - April (2015 vol. 64)
ISSN: 0018-9340
pp: 925-940
Jiantao Wang , Department of Computer Science , City University of Hong Kong,
Kam-Yiu Lam , Department of Computer Science , City University of Hong Kong,
Yuan-Hao Chang , Institute of Information Science , Academia Sinica,
Jen-Wei Hsieh , Department of Computer Science and Information Engineering, NTUST,
Po-Chun Huang , Institute of Information Science , Academia Sinica,
In this paper, we propose a novel multi-version B$^+$ -tree index structure, called block-based multi-version B$^+$ -tree ( BbMVBT), for indexing multi-versions of data items in an embedded multi-version database (EMVDB ) on flash memory. An EMVDB needs to support streams of update transactions and version-range queries to access different versions of data items maintained in the database. In BbMVBT, the index is divided into two levels. At the higher level, a multi-version index is maintained for keeping successive versions of each data item. These versions are allocated consecutively in a version block. At the lower level, a version array is used to search for a specific data version within a version block. With the reduced index structure of BbMVBT, the overhead for managing the index in processing update operations can be greatly reduced. At the same time, BbMVBT can also greatly reduce the number of accesses to the index in processing version-range queries. To ensure sufficient free blocks for creating version blocks for efficient execution of BbMVBT, in this paper, we also discuss how to perform garbage collection using the purging-range queries for reclaiming “old” versions of data items and their associated entries in the index nodes. Analysis of the performance of BbMVBT is presented and verified with performance studies using both synthetic and real workloads. The performance results illustrate that BbMVBT can significantly improve the read and write performance to the multi-version index as compared with MVBT even though the sizes of the version blocks are not large.
Indexes, Ash, Memory management, Sensors, Random access memory

J. Wang, K. Lam, Y. Chang, J. Hsieh and P. Huang, "Block-Based Multi-Version B$^+$ -Tree for Flash-Based Embedded Database Systems," in IEEE Transactions on Computers, vol. 64, no. 4, pp. 925-940, 2015.
662 ms
(Ver 3.3 (11022016))