Toward Programmable Strategy for Co-existence of Relational Schemes

The co-existence of relational schemas is an important feature of a database. A schema evolves to new versions, and then these multiple schema versions concurrently serve to multiple application versions evolving in the real world. We propose a programming framework for co-existence of relational schemas. The existing work shows a view based co-existence of relational schemas by giving a predefined strategy to propagate view update across schemas for data sharing. A co-existence strategy consists of a view definition for a new schema and rules of view update to propagate it from a new schema to an old schema. The existing work has three problems in practice; limited expressive power for co-existing strategies, a tricky design of auxiliary tables, and a necessity of global id. To resolve these problems, we propose a language for describing how an update is propagated across schemas and present a mechanism to derive auxiliary tables and other all equipment to run on an existing RDBMS. Our approach can be implemented by using the existing bidirectional transformation engine, BIRDS.

[1]  Torben Bach Pedersen,et al.  Multi-schema-version data management: data independence in the twenty-first century , 2018, The VLDB Journal.

[2]  SCOTT J AMBLER,et al.  REFACTORING DATABASES : EVOLUTIONARY DATABASE DESIGN ( PAPERBACK ) ( ADDISON-WESLEY SIGNATURE SERIES ( FOWLER ) ) BY , 2017 .

[3]  Benjamin C. Pierce,et al.  Relational lenses: a language for updatable views , 2006, PODS '06.

[4]  Carlo Curino,et al.  Managing and querying transaction-time databases under schema evolution , 2008, Proc. VLDB Endow..

[5]  Wolfgang Lehner,et al.  Living in Parallel Realities: Co-Existing Schema Versions with a Bidirectional Database Evolution Language , 2017, SIGMOD Conference.

[6]  Nate Foster,et al.  Combinators for bi-directional tree transformations: a linguistic approach to the view update problem , 2005, POPL '05.

[7]  Nicolas Spyratos,et al.  Update semantics of relational views , 1981, TODS.

[8]  Zhenjiang Hu,et al.  Programmable view update strategies on relations , 2019, Proc. VLDB Endow..

[9]  Umeshwar Dayal,et al.  On the correct translation of update operations on relational views , 1982, TODS.

[10]  Gregor Engels,et al.  Theory and Practice of Model Transformations , 2016, Lecture Notes in Computer Science.

[11]  Carlo Curino,et al.  Graceful database schema evolution: the PRISM workbench , 2008, Proc. VLDB Endow..

[12]  John F. Roddick,et al.  A survey of schema versioning issues for database systems , 1995, Inf. Softw. Technol..

[13]  Carlo Curino,et al.  Update Rewriting and Integrity Constraint Maintenance in a Schema Evolution Support System: PRISM++ , 2010, Proc. VLDB Endow..

[14]  Genny Tortora,et al.  Synchronization of Queries and Views Upon Schema Evolutions , 2016, ACM Trans. Database Syst..

[15]  Zhenjiang Hu,et al.  Toward Co-existing Database Schemas based on Bidirectional Transformation , 2019, ArXiv.

[16]  Zhenjiang Hu,et al.  A Clear Picture of Lens Laws - Functional Pearl , 2015, MPC.

[17]  Scott J. Ambler,et al.  Refactoring Databases: Evolutionary Database Design , 2006 .