Skip to main content
Log in

Robust and simple database evolution

  • Published:
Information Systems Frontiers Aims and scope Submit manuscript

Abstract

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 data needs to be evolved as well. This is usually realized with manually written SQL scripts, which is error-prone and explains significant costs in software projects. A promising solution are declarative database evolution languages, which couple both schema and data evolution into intuitive operations. Existing database evolution languages focus on usability but do not strive for completeness. However, this is an inevitable prerequisite to avoid complex and error-prone workarounds. We present CoDEL which is based on an existing language but is relationally complete. We precisely define its semantic using relational algebra, propose a syntax, and formally validate its relational completeness. Having a complete and comprehensive database evolution language facilitates valuable support throughout the whole evolution of a database. As an instance, we present VaCo, a tool supporting developers with variant co-evolution. Given a variant schema derived from a core schema, VaCo uses the richer semantics of CoDEL to semi-automatically co-evolve this variant with the core.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6

Similar content being viewed by others

Notes

  1. 1 https://wwwdb.inf.tu-dresden.de/research-projects/projects/inverda.

References

  • Ambler, S.W. (2006). Whence Data Management?. Dr. Dobb’s Journal, 390, 79.

    Google Scholar 

  • Ambler, S.W., & Sadalage, P.J. (2006). Refactoring Databases: Evolutionary Database Design. Addison-Wesley Signature, isbn 978-0321774514.

  • Beck, K., Beedle, M., van Bennekum, A., Cockburn, A., Cunningham, W., Fowler, M., Grenning, J., & et al (2001). Manifesto for Agile Software Development.

  • Ceri, S., Negri, M., & Pelagatti, G. (1982). Horizontal Data Partitioning in Database Design. SIGMOD Conference, 128–136.

  • Cicchetti, A., Ruscio, D.D., Eramo, R., & Pierantonio, A. (2008). Automating Co-evolution in Model-Driven Engineering. EDOC, 222–231.

  • Codd, E.F. (1970). A Relational Model of Data for Large Shared Data Banks. Communications of the ACM, 15(3), 162–166.

    Google Scholar 

  • Curino, C.A., Moon, H.J., Deutsch, A., & Zaniolo, C. (2010). Update Rewriting and Integrity Constraint Maintenance in a Schema Evolution Support System: PRISM++. VLDB Endowment, 4(2), 117–128.

    Article  Google Scholar 

  • Curino, C.A., Moon, H.J., Deutsch, A., & Zaniolo, C. (2012). Automating the Database Schema Evolution Process. VLDB Journal, 22(1), 73–98.

    Article  Google Scholar 

  • Curino, C.A., Moon, H.J., & Zaniolo, C. (2008). Graceful Database Schema Evolution: the PRISM Workbench. VLDB Endowment, 1(1), 761–772.

    Article  Google Scholar 

  • Curino, C.A., Tanca, L., Moon, H.J., & Zaniolo, C. (2008). Schema Evolution in Wikipedia: Toward a Web Information System Benchmark. ICEIS, 323–332.

  • Domínguez, E., Lloret, J., Rubio, Á.L., & Zapata, M.A. (2008). MeDEA: A Database Evolution Architecture with Traceability. Data & Knowledge Engineering, 65(3), 419–441.

    Article  Google Scholar 

  • Herrmann, K., Reimann, J., Voigt, H., Demuth, B., Fromm, S., Stelzmann, R. & Lehner, W. (2015). Database Evolution for Software Product Lines. DATA, 125–133.

  • Herrmann, K., Voigt, H., Behrend, A., & Lehner, W. (2015). CoDEL – A Relationally Complete Language for Database Evolution. ADBIS, 63–76.

  • Herrmann, K., Voigt, H., Seyschab, T., & Lehner, W. (2016). InVerDa – Co-existing Schema Versions Made Foolproof. ICDE (Demo).

  • Moon, H.J., Curino, C.A., Ham, M., & Zaniolo, C. (2009). PRIMA – Archiving and Querying Historical Data with Evolving Schemas. SIGMOD Conference, 1019–1022.

  • Papastefanatos, G., Vassiliadis, P., Simitsis, A., Aggistalis, K., Pechlivani, F., & Vassiliou, Y. (2008). Language Extensions for the Automation of Database Schema Evolution. ICEIS, 74–81.

  • Qiu, D., Li, B., & Su, Z. (2013). An empirical analysis of the co-evolution of schema and code in database applications, ESEC/FSE, 125.

  • Rahm, E., & Bernstein, P.A. (2006). An Online Bibliography on Schema Evolution. SIGMOD Record, 35(4), 30–31.

    Article  Google Scholar 

  • Roddick, J.F. (1992). SQL/SE – A Query Language Extension for Databases Supporting Schema Evolution. SIGMOD Record, 21(3), 10–16.

    Article  Google Scholar 

  • Roddick, J.F. (1995). A Survey of Schema Versioning Issues for Database Systems. Information and Software Technology, 37(7), 383–393.

    Article  Google Scholar 

  • Skoulis, I., Vassiliadis, P., & Zarras, A. (2014). Open-Source Databases: Within, Outside, or Beyond Lehman’s Laws of Software Evolution LNCS, 8484, 379–393.

    Google Scholar 

  • Terwilliger, J.F., Bernstein, P.A., & Unnithan, A. (2010). Worry-Free Database Upgrades. SIGMOD Conference, 1191.

  • Terwilliger, J.F., Bernstein, P.A., & Unnithan, A. (2010). Automated co-evolution of conceptual models, physical databases, and mappings ER, 146–159.

  • Terwilliger, J.F., Cleve, A., Curino, C.A. (2012). How Clean is Your Sandbox LNCS, 7307(2012), 1–23.

  • Ullman, J.D. (1988). Principles of database and knowledge-base systems: Computer Science Press. ISBN 9780881751888.

  • Zaniolo, C. (1984). Database Relations with Null Values. Journal of Computer and System Sciences, 28(1), 142–166.

    Article  Google Scholar 

Download references

Acknowledgments

This work is funded by the German Research Foundation (Deutsche Forschungsgemeinschaft; DFG) within the RoSI research training group (GRK 1907).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Kai Herrmann.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Herrmann, K., Voigt, H., Rausch, J. et al. Robust and simple database evolution. Inf Syst Front 20, 45–61 (2018). https://doi.org/10.1007/s10796-016-9730-2

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10796-016-9730-2

Keywords

Navigation