skip to main content
research-article

Graceful database schema evolution: the PRISM workbench

Published:01 August 2008Publication History
Skip Abstract Section

Abstract

Supporting graceful schema evolution represents an unsolved problem for traditional information systems that is further exacerbated in web information systems, such as Wikipedia and public scientific databases: in these projects based on multiparty cooperation the frequency of database schema changes has increased while tolerance for downtimes has nearly disappeared. As of today, schema evolution remains an error-prone and time-consuming undertaking, because the DB Administrator (DBA) lacks the methods and tools needed to manage and automate this endeavor by (i) predicting and evaluating the effects of the proposed schema changes, (ii) rewriting queries and applications to operate on the new schema, and (iii) migrating the database.

Our PRISM system takes a big first step toward addressing this pressing need by providing: (i) a language of Schema Modification Operators to express concisely complex schema changes, (ii) tools that allow the DBA to evaluate the effects of such changes, (iii) optimized translation of old queries to work on the new schema version, (iv) automatic data migration, and (v) full documentation of intervened changes as needed to support data provenance, database flash back, and historical queries. PRISM solves these problems by integrating recent theoretical advances on mapping composition and invertibility, into a design that also achieves usability and scalability. Wikipedia and its 170+ schema versions provided an invaluable testbed for validating PRISM tools and their ability to support legacy queries.

References

  1. R. B. Almeida, B. Mozafari, and J. Cho. On the evolution of wikipedia. In Int. Conf. on Weblogs and Social Media, March 2007.Google ScholarGoogle Scholar
  2. D. Barbosa, J. Freire, and A. O. Mendelzon. Designing information-preserving mapping schemes for xml. In VLDB, pages 109--120, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. P. A. Bernstein. Applying model management to classical meta data problems. In CIDR, 2003.Google ScholarGoogle Scholar
  4. P. A. Bernstein, T. J. Green, S. Melnik, and A. Nash. Implementing mapping composition. VLDB J., 17(2):333--353, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. P. A. Bernstein and E. Rahm. Data warehouse scenarios for model management. In ER, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. H. Bounif and R. Pottinger. Schema repository for database schema evolution. DEXA, 0:647--651, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. A. Cleve and J.-L. Hainaut. Co-transformations in database applications evolution. Generative and Transformational Techniques in Software Engineering, pages 409--421, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. C. A. Curino, H. J. Moon, L. Tanca, and C. Zaniolo. Schema Evolution in Wikipedia: toward a Web Information System Benchmark. ICEIS, 2008.Google ScholarGoogle Scholar
  9. C. A. Curino, H. J. Moon, and C. Zaniolo. Managing the history of metadata in support for db archiving and schema evolution. In ECDM, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. DB2 development team. DB2 Change Management Expert. 2006.Google ScholarGoogle Scholar
  11. A. Deutsch and V. Tannen. Optimization properties for classes of conjunctive regular path queries. In DBPL '01: Revised Papers from the 8th International Workshop on Database Programming Languages, pages 21--39, London, UK, 2002. Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. A. Deutsch and V. Tannen. Mars: A system for publishing XML from mixed and redundant storage. In VLDB, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. R. Fagin. Inverting schema mappings. ACM Trans. Database Syst., 32 (4): 25, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. R. Fagin, P. G. Kolaitis, L. Popa, and W. C. Tan. Composing schema mappings: Second-order dependencies to the rescue. In PODS, pages 83--94, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. R. Fagin, P. G. Kolaitis, L. Popa, and W.-C. Tan. Quasi-inverses of schema mappings. In PODS '07, pages 123--132, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. R. d. M. Galante, C. S. dos Santos, N. Edelweiss, and A. F. Moreira. Temporal and versioning model for schema evolution in object-oriented databases. Data & Knowledge Engineering, 53(2):99--128, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. M. Golfarelli, J. Lechtenbörger, S. Rizzi, and G. Vossen. Schema versioning in data warehouses. In ER (Workshops), pages 415--428, 2004.Google ScholarGoogle ScholarCross RefCross Ref
  18. J.-M. Hick and J.-L. Hainaut. Database application evolution: a transformational approach. Data Knowl. Eng., 59(3):534--558, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. H. V. Jagadish, I. S. Mumick, and M. Rabinovich. Scalable versioning in distributed databases with commuting updates. In Conference on Data Engineering, pages 520--531, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. T. Lemke and R. Manthey. The schema evolution assistant: Tool description, 1995.Google ScholarGoogle Scholar
  21. J. Madhavan and A. Y. Halevy. Composing mappings among data sources. In VLDB, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. S. Melnik, E. Rahm, and P. A. Bernstein. Rondo: A programming platform for generic model management. In SIGMOD, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. H. J. Moon, C. A. Curino, A. D. C.-Y. Hou, and C. Zaniolo. Managing and querying transaction-time databases under schema evolution. In VLDB, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. M. M. Moro, S. Malaika, and L. Lim. Preserving XML Queries during Schema Evolution. In WWW, pages 1341--1342, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. A. Nash, P. A. Bernstein, and S. Melnik. Composition of mappings given by embedded dependencies. In PODS, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Oracle development team. Oracle database 10g online data reorganization and redefinition. 2005.Google ScholarGoogle Scholar
  27. Y.-G. Ra. Relational schema evolution for program independency. Intelligent Information Technology, pages 273--281, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. S. Rizzi and M. Golfarelli. X-time: Schema versioning and cross-version querying in data warehouses. In ICDE, pages 1471--1472, 2007.Google ScholarGoogle ScholarCross RefCross Ref
  29. J. Roddick. A Survey of Schema Versioning Issues for Database Systems. Information and Software Technology, 37(7):383--393, 1995.Google ScholarGoogle ScholarCross RefCross Ref
  30. J. Ullman. Principles of Database System., Computer Science Press, 1982. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Y. Velegrakis, R. J. Miller, and L. Popa. Mapping adaptation under evolving schemas. In VLDB, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Wikimedia Foundation. Mediawiki http://www.mediawiki.org, 2007. {Online}.Google ScholarGoogle Scholar
  33. Wikimedia Foundation. Wikipedia http://en.wikipedia.org/, 2007. {Online}.Google ScholarGoogle Scholar
  34. C. Yu and L. Popa. Semantic adaptation of schema mappings when schemas evolve. In VLDB, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Graceful database schema evolution: the PRISM workbench

            Recommendations

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in

            Full Access

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader