Object-oriented database evolution
An evolution languageis composed of an instance update language, a schema update language, and a mechanism to combine them. We present a formal evolution language for object-oriented database management systems. This language allows to write programs to update simultaneously both the schema and the instance. Static checking of these programs insures that the resulting database is consistent.
We propose an autonomous instance update language, based on an adequate specific query language and a pure instance update language. The main features of the query language are a formal type inference system including disjunctive types, and the decidability of the satisfiability problem, despite a negation operator. The pure instance update language allows objects migration, and objects and references creation and deletion; its semantics is declarative, and an algorithm to compute it is presented.
We propose an evolution mechanism for combining this instance update language with a classical schema update language, and use it to obtain an evolution language. Decidability of consistency is shown for a fragment of this language, by reduction to first-order logic with two variables.
KeywordsQuery Language Path Query Path Expression Database Evolution Attribute Definition
Unable to display preview. Download preview PDF.
- [AKW90]S. Abiteboul, P. Kanellakis, and E. Waller. Method schemas. In PODS, pages 16–27, 1990.Google Scholar
- [ALP91]J. Andany, M. Leonard, and C. Palisser. Management of schema evolution in databases. In VLDB, 1991.Google Scholar
- [Bar77]J. Barwise. Chapter: An introduction to first-order logic. In Handbook of Mathematical Logic, 1977.Google Scholar
- [BKKK87]J. Banerjee, W. Kim, H.-J. Kim, and H. F. Korth. Semantics and implementation of schema evolution in object-oriented databases. In SIGMOD, 1987.Google Scholar
- [FMZ+95][FMZ+95] F. Ferrandina, T. Meyer, R. Zicari, G. Ferran, and J. Madec. Schema and database evolution in the o2 object database system. In VLDB, pages 170–181, 1995.Google Scholar
- [Lag]J.B. Lagorce. Aspects of updates in databases. PhD thesis in preparation.Google Scholar
- [LSW]J.B. Lagorce, A. Stočkus, and E. Waller. Object-oriented databases evolution. Technical Report in preparation, Orsay.Google Scholar
- [Mit90]J. C. Mitchell. Chapter: Type systems for programming languages. In Handbook of Theoretical Computer Science, 1990.Google Scholar
- [MMW94]A. Mendelzon, T. Milo, and E. Waller. Object migration. In PODS, 1994.Google Scholar
- [Mor75]M. Mortimer. On languages with two variables. In Zeitschr. f. mat. Logik und Grunlagen d. Math, Bd. 21, pages 135–140, 1975.Google Scholar
- [NR89]G.T. NGuyen and D. Rieu. Schema evolution in object-oriented database systems. In Data and Knowledge Engineering, 1989.Google Scholar
- [PS87]D. J. Penney and J. Stein. Class modification in the gemstone object-oriented dbms. In OOPSLA, 1987.Google Scholar
- [Sto95]A. Stockus. Migration dans les bases de données orientées objet. DEA report, Orsay, 1995.Google Scholar
- [Su91]J. Su. Dynamic constraints and object migration. In VLDB, pages 233–242, 1991.Google Scholar
- [Wal91]E. Waller. Schema updates and consistency. In DOOD, 1991.Google Scholar
- [Zdo87]S. Zdonik. Can objects change types, can types change objects? In Workshop on OODBS, 1987.Google Scholar
- [Zic92]R. Zicari. A framework for schema updates in an object-oriented database system. In The O 2Book, 1992.Google Scholar