Databases Reference
In-Depth Information
taxonomy of temporal extent transformations shown in Fig-
ure 9.5 (and repeated as Figure 10.21 ) to be sure that we have
demonstrated that each of them can be produced by one of
the three temporal transactions.
In the meantime, let's turn to temporal update transactions.
But before we do, let's note that update transactions do not bring
about temporal extent transformations. A temporal extent trans-
formation necessarily involves adding the representation of an
object to one or more clock ticks, or removing the representation
of an object from one or more clock ticks. Temporal updates do
neither. They simply change business data on versions that
[intersect] a designated target range.
The Temporal Update Transaction
A temporal update transaction specifies (i) an object, (ii) a
value for one or more columns of business data, and (iii) a target
effective timespan, which we sometimes also call a target range
for the transaction. The transaction includes the object identifier
(oid), if it is known to the user. If an oid is not provided on the
transaction, the AVF attempts to find or create one according to
the rules described in the previous chapter. Finally, the transac-
tion either accepts the default values for its temporal parameters,
or overrides one or more of them with explicit values.
Although a temporal update does not alter the temporal extent
of an object, it is still the most complex of the three temporal trans-
actions to implement. There are always existing versions that must
be withdrawn. If parts of those versions do not [intersect] the trans-
action's target range, those partsmust be replaced. Then the parts of
versions or entire versions that do [intersect] the target range must
be superceded with versions that contain the new data.
As long as even a single clock tick in the transaction's target
range [intersects] the effective time period of some version of the
specified object, the temporal update is valid because it means that
there is data for the transaction to modify. A valid update is always
carried out by creating one new version for every version found
within the target range, as well as a new version for every part of a
version found within the target range. These versions are the ones
that supercede, in current assertion time, the versions that fall
within the timespan of the transaction. A valid update will also cre-
ate a new version for those parts of versions, if any, that do not
[ intersect ] the target range. These new versions contain no new
business data. They are simply replacements for those parts of
withdrawn versions that were unaffected by the update.
 
Search WWH ::




Custom Search