Living in Parallel Realities -- Co-Existing Schema Versions with a Bidirectional Database Evolution Language
Kai Herrmann, Hannes Voigt, Andreas Behrend, Jonas Rausch, Wolfgang, Lehner

TL;DR
This paper presents InVerDa, a system enabling co-existing schema versions in a single database with automatic delta code generation, improving robustness and flexibility in database evolution.
Contribution
It introduces BiDEL, a bidirectional evolution language, and demonstrates how it automates delta code creation for multiple schema versions, simplifying database evolution.
Findings
Automatic delta code generation reduces development effort
Multiple schema versions remain accessible simultaneously
Physical table redesigns do not disrupt co-existing schemas
Abstract
We introduce end-to-end support of co-existing schema versions within one database. While it is state of the art to run multiple versions of a continuously developed application concurrently, it is hard to do the same for databases. In order to keep multiple co-existing schema versions alive; which are all accessing the same data set; developers usually employ handwritten delta code (e.g. views and triggers in SQL). This delta code is hard to write and hard to maintain: if a database administrator decides to adapt the physical table schema, all handwritten delta code needs to be adapted as well, which is expensive and error-prone in practice. In this paper, we present InVerDa: developers use the simple bidirectional database evolution language BiDEL, which carries enough information to generate all delta code automatically. Without additional effort, new schema versions become…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAdvanced Database Systems and Queries · Service-Oriented Architecture and Web Services · Semantic Web and Ontologies
