Multi-version indexing and modern hardware technologies: a survey of present indexing approaches

Characteristics of modern computing and storage technologies fundamentally differ from traditional hardware. There is a need to optimally leverage their performance, endurance and energy consumption characteristics. Therefore, existing architectures and algorithms in modern high performance database management systems have to be redesigned and advanced. Multi Version Concurrency Control (MVCC) approaches in data-base management systems maintain multiple physically independent tuple versions. Snapshot isolation approaches enable high parallelism and concurrency in workloads with almost serializable consistency level. Modern hardware technologies benefit from multi-version approaches. Indexing multi-version data on modern hardware is still an open research area. In this paper, we provide a survey of popular multi-version indexing approaches and an extended scope of high performance single-version approaches. An optimal multi-version index structure brings look-up efficiency of tuple versions, which are visible to transactions, and effort on index maintenance in balance for different workloads on modern hardware technologies.

[1]  S. B. Yao,et al.  Efficient locking for concurrent operations on B-trees , 1981, TODS.

[2]  Ilia Petrov,et al.  MV-IDX: indexing in multi-version databases , 2014, IDEAS.

[3]  David B. Lomet,et al.  High performance temporal indexing on modern hardware , 2015, 2015 IEEE 31st International Conference on Data Engineering.

[4]  Patrick E. O'Neil,et al.  The log-structured merge-tree (LSM-tree) , 1996, Acta Informatica.

[5]  Harumi A. Kuno,et al.  Adaptive indexing for relational keys , 2010, 2010 IEEE 26th International Conference on Data Engineering Workshops (ICDEW 2010).

[6]  Norman May,et al.  Timeline index: a unified data structure for processing queries on temporal data in SAP HANA , 2013, SIGMOD '13.

[7]  Goetz Graefe,et al.  Sorting And Indexing With Partitioned B-Trees , 2003, CIDR.

[8]  Robert Gottstein Impact of new storage technologies on an OLTP DBMS, its architecture and algorithms , 2016 .

[9]  David B. Lomet,et al.  The performance of a multiversion access method , 1990, SIGMOD '90.

[10]  Norman May,et al.  Bi-temporal Timeline Index: A data structure for Processing Queries on bi-temporal data , 2015, 2015 IEEE 31st International Conference on Data Engineering.

[11]  Sudipta Sengupta,et al.  The Bw-Tree: A B-tree for new hardware platforms , 2013, 2013 IEEE 29th International Conference on Data Engineering (ICDE).

[12]  Bernhard Seeger,et al.  An asymptotically optimal multiversion B-tree , 1996, The VLDB Journal.

[13]  Raghu Ramakrishnan,et al.  bLSM: a general purpose log structured merge tree , 2012, SIGMOD Conference.