We propose two alternative solutions to solve the concurrency problems
illustrated above.
First compensation-based solution is shown in Figure 1. Here, VM (View
Maintenance), VS (View Synchronization) and VA (View Adaptation) are general
view algorithms based on different types of source updates [12,13,14]. To
solve the concurrency problems, we propose to apply
local-compensation algorithm
in the "Query Engine" to handle concurrent data updates and concurrent
rename schema changes. To resolve the concurrency caused by concurrent drop
schema changes , we introduce a new algorithm called "Dyno" to dynamically
schedule the maintenance order of the updates to solve the conflicts. The details
could be found in [5].
Second multiversion-based solution is shown in Figure 2. Here, A new transaction
model (DWMS_Transaction) is introduced which integrates both base update transaction
and maintenance transactions. We then rephase the DW maintenance anomaly problems
to the serializability of the DWMS_Transactions. To achieve such serializability,
we introduce a multiversion algorithm for concurrency handling, in particular, the
versioned data are stored in the "TxnWrap" [3]. We also explore several optimizations
based on this approach, such as wrapper optimization, parallel DW maintenance, batch
DW maintenance etc [1,4].
We implemented a prototype system on top of EVE system. We also
experimentally evaluated our proposed techniques.
|