THESIS: Abstract

A Transaction Manager Component Supporting Extended Transaction Models

 

Copyright © 1996 by George T. Heineman

Abstract

Database management systems (DBMSs) have increasingly been used for advanced application domains, such as software development environments (SDEs), network management, workflow management systems (WFMSs), and computer-aided design and manufacturing (CAD/CAM). Traditional database applications, such as banking and airline reservation systems, rely on the DBMS to guarantee the consistency of the data. Towards this end, most DBMSs provide a correctness model based on conflict serializability (serializability for short) that assumes no specialized knowledge of the transactions it processes. Many researchers have argued that serializability, as a concurrency control policy, is too restrictive; advanced database applications have semantic information that should be employed when maintaining the consistency of the data. The term semantic information refers to any pertinent knowledge about a transaction, its operations, or its relationships with other transactions. For this reason, many extended transaction models (ETMs) have been developed. There is no consensus, however, as to which ETM is appropriate for advanced database applications; most likely, there never will be. A DBMS, therefore, cannot expect to implement an ETM that all database applications will use.

This dissertation aims to solve two problems: How does one specify an extended transaction model? How to implement (or support) the ETM? Since we want to avoid any solution that requires a full implementation from scratch for each application, we seek a means to provide extensible concurrency control. One of the drawbacks of most descriptions of ETMs is that they are abstractly rendered and not usually implemented. As part of our research, we have designed and implemented a transaction manager component, called PERN, that employs a Concurrency Control Language (CCL) interpreter to provide extensible concurrency control. CORD is a declarative CCL used to specify a coordination model that determines how to extend a transaction manager's concurrency control policy. CORD is practical since it assumes that the transaction manager already provides Serializability as a correctness criterion, and extended transaction models are described by their extensions to Serializability. In this dissertation, we show the power and flexibility of CORD as we model many popular extended transaction models from the literature. For existing DBMSs, we show how to modify transaction managers to incorporate the CORD run-time interpreter, thus allowing them to provide extensible concurrency control. This dissertation presents an External Concurrency Control (ECC) architecture which is realized by the PERN component. This reference architecture captures the essence of advanced database applications and shows how a transaction manager can employ semantic information from the Task Management Layer (TML) of these applications. The mediator-based architecture presented in this dissertation allows for flexible integration of a transaction manager component and advanced database applications. This mediator architecture allows semantic information to be extracted from an application in a generic manner. line

Table of Contents
Next Chapter