Discuss why traditional transaction management protocols are too restrictive for advanced database applications.
What will be an ideal response?
Conventional transaction management systems (TMSs) synchronize simple read and
write operations. However, TMSs for advanced database applications must be able to
deal with abstract operations. It may even be possible to improve concurrency by
utilizing semantic knowledge about the objects and their abstract operations.
? Advanced database applications have different database access patterns than
conventional database applications where the access is competitive (e.g., two users
accessing the same bank account). Instead, sharing may be more cooperative as in the
case, for example, multiple users accessing and working on the same design document.
In this case, users accesses need to be synchronized, but users are willing to cooperate
rather than compete for access to shared objects.
? Conventional transactions access ‘flat’ objects (e.g., pages, tuples) whereas transactions
for advanced database applications may require synchronized access to composite and
complex objects. Synchronization of access to such objects requires synchronization of
access to the component objects.
? These applications require the support of long-duration transactions spanning hours,
days or even weeks (e.g., working on a design object). Therefore, the transaction
mechanism must support the sharing of partial results. Furthermore, to avoid the failure
of partial tasks jeopardizing a long activity, it is necessary to distinguish between those
activities that are essential for the completion of the transaction and those that are not,
and to provide for alternative actions in case the primary activity fails.
? These applications may benefit from active capabilities for timely response to events and
changes in the environment. This new database paradigm requires the monitoring of
events and the execution of system triggered activities within running transactions.
You might also like to view...
A(n) ____________________ is a form that might be displayed when you open a database and provides a controlled method for users to open the objects in a database.
Fill in the blank(s) with the appropriate word(s).
Why did demand fetching endure as the conventional wisdom for so long? Why are anticipatory fetch strategies receiving so much more attention today than they did decades ago?
What will be an ideal response?