Prism

From Schema Evolution
Revision as of 17:07, 26 September 2008 by Schemaevolution (Talk | contribs)

Jump to: navigation, search

PRISM-LOGO.png

PRISM is a joint project of Politecnico di Milano and University of California, Los Angeles. The main investigators are:

Carlo A. Curino (contact author): [1]

Hyun J. Moon: [2]

Carlo Zaniolo: [3]

Contents

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 (SMO) 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.

On-line Demo

Prism: a tool for schema evolution support

While the actual demo is available online at: Prism a tool for schema evolution support. The Demo is still under development and has limited functionalities w.r.t. the internal prototype, but we are working on it... stay tuned!

Screencasts

There is a Video of the Demo available at: http://yellowstone.cs.ucla.edu/schema-evolution/documents/Prism-Demo.mov

There is a Video of the VLDB presentation at: http://yellowstone.cs.ucla.edu/schema-evolution/documents/prism-vldb2008.mov

Publications

"Graceful database schema evolution: the prism workbench", Carlo A. Curino, Hyun J. Moon, Carlo Zaniolo, to appear in VLDB 2008 PDF

"Information Systems Integration and Evolution: Ontologies at Rescue", Carlo A. Curino, Letizia Tanca, Carlo Zaniolo, STSM 2008 PDF

"The PRISM Workwench: Database Schema Evolution Without Tears", Carlo A. Curino, Hyun J. Moon, MyungWon Ham, Carlo Zaniolo, DEMO paper at ICDE 2009.

Bibtex

 @INPROCEEDINGS{curino-vldb2008a,
   author = {Carlo A. Curino and Hyun J. Moon and Carlo Zaniolo},
   title = {Graceful database schema evolution: the prism workbench},
   booktitle = {Very Large Data Base (VLDB)},
   year = {2008}
 }
 @INPROCEEDINGS{curino-stsm2008,
   author = {Carlo A. Curino and Letizia Tanca and Carlo Zaniolo},
   title = {Information Systems Integration and Evolution: Ontologies at Rescue},
   booktitle = {International Workshop on Semantic Technologies in System Maintenance (STSM)},
   year = {2008}
 }

Commercial Competitors

Here we list a series of commercial tools which partially tackle the problem of Schema Evolution. None of this support automatic query rewriting and data migration impact analysis as done by prototype PRISM. Most of them focus on comparing schema versions and creating report of the differences. Another common features is analyzing the impact of the change w.r.t. other DB objects such as store procedures, views, constraints, but none of this provide analysis of the impact on query and applications.

  • DB2 Change Management Expert [4]
  • Oracle Change Management Pack [5]
  • MySQL Workbench for Schema Change [6]
  • SwisSQL DBChangeManager (MSSQL) [7]
  • Idera SQL Change [8]
  • Embarcadero Change Manager [9]
  • Red-Gate SQL Compare [10]
  • Best Soft Tool [11]
Personal tools