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 immediately accessible and data changes in any version are visible in all schema versions at the same time. InVerDa also allows for easily changing the physical table design without affecting the availability of co-existing schema versions. This greatly increases robustness (orders of magnitude less lines of code) and allows for significant performance optimization. A main contribution is the formal evaluation that each schema version acts like a common full-fledged database schema independently of the chosen physical table design.
- M. Arora and A. Gosain. Article: Schema Evolution for Data Warehouse: A Survey. International Journal of Computer Applications, 22(5):6--14, 2011.Google ScholarCross Ref
- A. Behrend, U. Griefahn, H. Voigt, and P. Schmiegelt. Optimizing continuous queries using update propagation with varying granularities. In SSDBM '15, pages 1--12, New York, USA, jun 2015. ACM Press. Google ScholarDigital Library
- P. A. Bernstein and S. Melnik. Model management 2.0. In Proceedings of the 2007 ACM SIGMOD international conference on Management of data - SIGMOD '07, page 1, New York, New York, USA, 2007. ACM Press. Google ScholarDigital Library
- M. L. Brodie and J. T. Liu. Keynote: The Power and Limits of Relational Technology In the Age of Information Ecosystems. In OTM'10, pages 2--3, 2010.Google Scholar
- C. Curino, H. J. Moon, A. Deutsch, and C. Zaniolo. Automating the database schema evolution process. VLDB Journal, 22(1):73--98, dec 2013. Google ScholarDigital Library
- C. Curino, H. J. Moon, and C. Zaniolo. Graceful database schema evolution: the PRISM workbench. VLDB Endowment, 1(1):761--772, aug 2008. Google ScholarDigital Library
- C. Curino, L. Tanca, H. J. Moon, and C. Zaniolo. Schema evolution in wikipedia: toward a web information system benchmark. In ICEIS, pages 323--332, 2008.Google Scholar
- E. Domínguez, J. Lloret, Á. L. Rubio, and M. a. Zapata. MeDEA: A database evolution architecture with traceability. Data and Knowledge Engineering, 65(3):419--441, 2008. Google ScholarDigital Library
- K. Herrmann, H. Voigt, A. Behrend, and W. Lehner. CoDEL - A Relationally Complete Language for Database Evolution. In ADBIS '15, pages 63--76, Poitiers, France, 2015. Springer.Google ScholarCross Ref
- K. Herrmann, H. Voigt, T. Seyschab, and W. Lehner. InVerDa -- co-existing schema versions made foolproof. In ICDE '16, pages 1362--1365. IEEE, 2016.Google ScholarCross Ref
- M. Hofmann, B. Pierce, and D. Wagner. Symmetric lenses. ACM SIGPLAN Notices - POPL '11, 46(1):371, jan 2011. Google ScholarDigital Library
- P. Howard. Data Migration Report, 2011.Google Scholar
- H. J. Moon, C. Curino, M. Ham, and C. Zaniolo. PRIMA - archiving and querying historical data with evolving schemas. In SIGMOD '09, pages 1019--1022. ACM Press, jun 2009. Google ScholarDigital Library
- E. Rahm and P. a. Bernstein. An online bibliography on schema evolution. ACM SIGMOD Record, 35(4):30--31, dec 2006. Google ScholarDigital Library
- J. F. Roddick. SQL/SE - A Query Language Extension for Databases Supporting Schema Evolution. ACM SIGMOD Record, 21(2):10--16, sep 1992. Google ScholarDigital Library
- J. F. Roddick. A survey of schema versioning issues for database systems. Information and Software Technology, 37(7):383--393, 1995.Google ScholarCross Ref
- J. F. Terwilliger, A. Cleve, and C. Curino. How Clean Is Your Sandbox? Lecture Notes in Computer Science, 7307:1--23, 2012. Google ScholarDigital Library
- B. Wall and R. Angryk. Minimal data sets vs. synchronized data copies in a schema and data versioning system. In PIKM '11, page 67, New York, USA, oct 2011. ACM Press. Google ScholarDigital Library
Index Terms
- Living in Parallel Realities: Co-Existing Schema Versions with a Bidirectional Database Evolution Language
Recommendations
A High-level User-oriented Framework for Database Evolution
SSDBM '19: Proceedings of the 31st International Conference on Scientific and Statistical Database ManagementDatabases are well suited to the task of describing and organizing research datasets, however, the difficulties of using database management systems effectively have resulted in their limited usage among domain scientists. Scientists operate in an ...
Evolutionary Database Design: Enhancing Data Abstraction Through Database Modularization to Achieve Graceful Schema Evolution
DEXA 2016: Proceedings, Part I, 27th International Conference on Database and Expert Systems Applications - Volume 9827Software systems are not immutable through time, especially in modern development methods such as agile ones. Therefore, a software system is constantly evolving. Besides coding, the database schema design also plays a major role. Changes in ...
Robust and simple database evolution
Software developers adapt to the fast-moving nature of software systems with agile development techniques. However, database developers lack the tools and concepts to keep the pace. Whenever the current database schema is evolved, the already existing ...
Comments