In modern database applications access to historical versions of the dataset is becoming increasingly important. Several multiversion structures with corresponding concurrency-control and recovery algorithms exist, but none of these have optimal logarithmic execution times for all actions in all situations. The time-split B + -tree by Lomet et al. (TSBT) is used in the Immortal DB database prototype, but it does not consolidate pages. The multiversion B + -tree by Becker et al. (MVBT) is an asymptotically optimal multiversion structure that guarantees logarithmic execution times for all actions, but it lacks concurrency-control algorithms.It is our plan to design and implement several multiversion index structures with full concurrency-control and ARIESbased recovery algorithms and evaluate their performance. We will experiment with using a multiversion B + -tree as a historical storage, to which the updates of committed transactions are moved one at a time from a separate B + -tree. We will also consider using an optimized R-tree to store the multiversion data as two-dimensional line segments. To evaluate these solutions, we will also implement a straightforward B + -tree based solution that stores the different versions of a data item consecutively; and a solution based on the existing time-split B + -tree. We expect that the solution that uses a multiversion B + -tree will be the most efficient.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.