26 March 2009
The management of heterogeneous databases, in integrated or collaborative contexts, always involves the need for solutions to data programmability issues. In general, data programmability addresses problems dealing with evolving scenarios: changes in a database which collaborates in a heterogeneous environment often imply a sequence of propagating changes in related databases at any level, model, schema, and data.
In this scenario there is the need to translate data and their descriptions from one model (i.e. data model) to another. Even small variations of models are often enough to create difficulties. For example, while most database systems are now object-relational, the actual features offered by different systems rarely coincide, so data migration requires a conversion. Every new database technology introduces more heterogeneity and thus more need for translations.
According to the model management proposal, these problems can be solved conveniently applying the ModelGen operator, that can be defined as follows using our terminology: given two models M1 and M2 and a schema S1 of M1, ModelGen translates S1 into a schema S2 of M2 that properly represents S1.
In this dissertation we will be presenting our theoretical and practical contribution to the development of an effective implementation of a generic (i.e. model independent) platform for schema and data translation.
We improve the expressive power of its supermodel, that is the set of models handled and accuracy and precision of such models representation. We show how it is possible to automatically reason on models and schemas and how to find a suitable translation given a source and a target model exploiting a formal system, proved to be sound and complete. Then we propose an extension of Datalog based on the use of hierarchies and a sort of polymorphism, that provides a significant simplification in the definition of translations and a higher level of reuse in the specification of elementary translations. Finally we present a new, lightweight, runtime approach to the translation problem, where translations of data are performed directly on the operational system.
|Institution||University of Roma Tre|