TY - GEN
T1 - Versioning in main-memory database systems from MusaeusDB to TarDISDB
AU - Schüle, Maximilian E.
AU - Karnowski, Lukas
AU - Schmeißer, Josef
AU - Kleiner, Benedikt
AU - Kemper, Alfons
AU - Neumann, Thomas
N1 - Publisher Copyright:
© 2019 Copyright held by the owner/author(s). Publication rights licensed to ACM.
PY - 2019/7/23
Y1 - 2019/7/23
N2 - As relational database systems do not support collaborative dataset editing, online lexicons—such as Wikipedia’s MediaWiki—build their own version control above the database system to allow constraint-preserving version checkouts or commits involving multiple tables. To eliminate the need for purpose-specific solutions, we propose adding version control as a layer on top of the database system or integrating versioning in the database system’s core. This paper presents the first two architectures for versioning an entire state of a database system with respect to references among multiple relations. We design the prototype MusaeusDB as a solution for existing database systems, either as an external tool or as an extended SQL interface. The prototype TardisDB—an extended main-memory database system—reuses multi-version concurrency control for in-place updates while keeping older versions accessible. For performance tests on different storage layouts, we create—based on Wikipedia’s page history—the TardisBenchmark. Our results show that it is indeed feasible to reduce wasted space while still ensuring constant retrieval time. Also, extending a main-memory database system’s multi-version concurrency control has no negative impact on the transactional throughput. For further research on database versioning, we offer a flexibly sized benchmark with time evolving, text-based datasets and compression techniques.
AB - As relational database systems do not support collaborative dataset editing, online lexicons—such as Wikipedia’s MediaWiki—build their own version control above the database system to allow constraint-preserving version checkouts or commits involving multiple tables. To eliminate the need for purpose-specific solutions, we propose adding version control as a layer on top of the database system or integrating versioning in the database system’s core. This paper presents the first two architectures for versioning an entire state of a database system with respect to references among multiple relations. We design the prototype MusaeusDB as a solution for existing database systems, either as an external tool or as an extended SQL interface. The prototype TardisDB—an extended main-memory database system—reuses multi-version concurrency control for in-place updates while keeping older versions accessible. For performance tests on different storage layouts, we create—based on Wikipedia’s page history—the TardisBenchmark. Our results show that it is indeed feasible to reduce wasted space while still ensuring constant retrieval time. Also, extending a main-memory database system’s multi-version concurrency control has no negative impact on the transactional throughput. For further research on database versioning, we offer a flexibly sized benchmark with time evolving, text-based datasets and compression techniques.
KW - SQL
KW - Version control
UR - http://www.scopus.com/inward/record.url?scp=85071267476&partnerID=8YFLogxK
U2 - 10.1145/3335783.3335792
DO - 10.1145/3335783.3335792
M3 - Conference contribution
AN - SCOPUS:85071267476
T3 - ACM International Conference Proceeding Series
SP - 169
EP - 180
BT - Proceedings of the 31st International Conference on Scientific and Statistical Database Management, SSDBM 2019
A2 - Malik, Tanu
A2 - Maltzahn, Carlos
A2 - Jimenez, Ivo
PB - Association for Computing Machinery
T2 - 31st International Conference on Scientific and Statistical Database Management, SSDBM 2019
Y2 - 23 July 2019 through 25 July 2019
ER -