Databases Reference
In-Depth Information
M ¢
M
Schema T ¢
Schema S
Schema T
M
M ¢¢
Mo M ¢
M
o M o M ¢
Schema S ¢¢
Fig. 7.1
Application of composition and inversion in schema evolution
M 0 , where the target schema of
M 0 . The result is a
M
is the source schema of
M ı M 0 that has the same effect as applying first
M 0 .
schema mapping
M
and then
M ı M 0 combines the original transformation
For our schema evolution context,
M 0 .
Source schema evolution. Assume now that the source schema evolves to a new
source schema S 00 , and that we model this evolution as a schema mapping
M
with the evolution mapping
M 00 from
S to S 00 . Intuitively,
M 00 represents a data transformation that converts instances of
S to instances of S 00 . We need to obtain a new schema mapping that reflects the
original schema mapping
M ı M 0 after target schema evolution) but
uses S 00 as the source schema. Note that in this case we cannot directly combine
M 00 with
M
(or rather
M ı M 0 are not consecutive.
To be able to apply composition, we need first to apply the inversion operator and
obtain a schema mapping
M ı M 0 via composition, since
M 00 and
M
that “undoes” the effect of
M 00 . Once we obtain a
M ı M ı M 0 .
The resulting schema mapping, which is now from S 00 to T 0 , is an adaptation of the
original schema mapping
M , we can then apply the composition operator to produce
suitable
that works on the evolved schemas.
While the composition of two schema mappings (under a fairly natural seman-
tics [ Fagin et al. 2004 ; Melnik 2004 ]) always exists and it is “only” a matter of
expressing the composition in a suitable language for schema mappings, the situ-
ation is worse for inversion. In general, a schema mapping may lose information
and, as a result, it may not be possible to revert the transformation in a way that
recovers the original data. Hence, an exact inverse [ Fagin 2007 ] may not exist,
and one needs to look beyond such exact inverses. As a result, there are several
notions of “approximations” of inverses that have recently been developed: quasi-
inverses [ Fagin et al. 2008b ], maximum recoveries [ Arenas et al. 2008 ], maximum
extended recoveries [ Fagin et al. 2009b ]. In this paper, motivated by the applications
to schema evolution, we take a more pragmatic approach for the treatment of the
various notions of inverse and emphasize the operational aspect behind them. In par-
ticular, we focus on two types of inverses, which were first introduced in Fagin et al.
[ 2009b ] and which have a clear operational semantics based on the notion of chase
that makes them attractive from a practical point of view. The first type of such oper-
ational inverses, which are called chase-inverses , can be used to recover the original
M
Search WWH ::




Custom Search