
Database Transaction Models for Advanced Applications
- 1st Edition - April 1, 1992
- Imprint: Morgan Kaufmann
- Editor: Ahmed K. Elmagarmid
- Language: English
- Hardback ISBN:9 7 8 - 1 - 5 5 8 6 0 - 2 1 4 - 4
- eBook ISBN:9 7 8 - 0 - 0 8 - 0 5 0 3 7 7 - 6
This collection offers the reader a broad survey of the role of transaction processing in advanced computer applications. It contains an introduction to traditional transa… Read more

Purchase options

Institutional subscription on ScienceDirect
Request a sales quoteThis collection offers the reader a broad survey of the role of transaction processing in advanced computer applications.
It contains an introduction to traditional transaction technology, and comprehensive descriptions of commercial systems and research projects.
This volume will help anyone interested in keeping up with database applications and the potential for transaction processing systems to address the needs of OLTP, CAD, CASE, computer aided publishing, heterogeneous databases, active databases, communications, systems and other areas.
For researchers, managers, software developers, professionals in the data processing fields, or anyone interested in a coherent overview of this new and fast growing area of computer science.
Edited by Ahmed K. Elmagarmid
- Foreword by Jim Gray
- Preface
- Acknowledgments
- 1 Transaction Management in Database Systems
- D. Agrawal and A. El Abbadi
- 1.1 Introduction
- 1.2 Execution atomicity
- 1.2.1 Motivation
- 1.2.2 Serializability
- 1.2.3 Conflict Serializability
- 1.3 Failure Atomicity
- 1.3.1 Transaction Failures
- 1.3.2 System Failures
- 1.4 Distributed Databases
- 1.5 Extensions to the Transaction Model
- 1.5.1 Multiversion Databases
- 1.5.2 Nested Transaction Model
- 1.5.3 Transaction Models for Abstract Objects
- 1.6 Concluding Remarks
- 2 Introduction to Advanced Transaction Models
- Ahmed K. Elmagarmid, Yungho Leu, James G. Mullen, and Omran Bukhres
- 2.1 Introduction
- 2.2 Advanced Transaction Models
- 2.2.1 Cooperative Transaction Hierarchy
- 2.2.2 Cooperative SEE Transactions
- 2.2.3 DOM Transactions
- 2.2.4 A Transaction Model for an Open Publication Environment
- 2.2.5 ConTract Model
- 2.2.6 Split-Transactions
- 2.2.7 Flex Transaction Model
- 2.2.8 ACTA
- 2.2.9 Transaction Tool Kits
- 2.2.10 S Transactions
- 2.2.11 Multilevel and Open Nested Transactions
- 2.2.12 Polytransactions
- 2.3 Summary of Transaction Models
- 3 A Cooperative Transaction Model for Design Databases
- Marian H. Nodine, Sridhar Ramaswamy, and Stanley B. Zdonik
- 3.1 Introduction
- 3.2 Characteristics of the Transaction Model
- 3.2.1 Hierarchical Organization of Transactions
- 3.2.2 Correctness Criteria
- 3.2.3 Multi-copy versus Single-copy system
- 3.2.4 Operation-Based Recovery
- 3.3 The Model
- 3.3.1 Transaction Groups
- 3.3.2 Cooperative Transactions
- 3.3.3 Operations
- 3.3.4 Histories
- 3.4 Correctness
- 3.4.1 Patterns and Conflicts
- 3.4.2 LR(O) Grammars and DPDAs
- 3.4.3 Correct Transaction Group Histories
- 3.5 Example
- 3.6 Synchronization
- 3.6.1 Algorithm
- 3.6.2 Example
- 3.6.3 Checkpointing
- 3.7 Recovery
- 3.7.1 Dependency Maintenance and Logging
- 3.7.2 Algorithm
- 3.8 Related Research
- 3.9 Summary
- 4 A Flexible Framework for Transaction Management in Engineering Environments
- Sandra Heiler, Sara Haradhvala, Stanley Zdonik, Barbara Blaustein, and Arnon Rosenthal
- 4.1 Introduction
- 4.1.1 Motivation
- 4.1.2 Summary of the Approach
- 4.1.3 An Example of Transaction Management in a Simple Organization
- 4.1.4 Related Work
- 4.2 The Model
- 4.2.1 Overview
- 4.2.2 Semantics of Request Processing
- 4.2.3 Request Processing by the TMH
- 4.2.4 Framework Services and Their Interfaces
- 4.3 Protocols for Software Engineering Environments-Approaches and Idioms
- 4.3.1 Specifying Protocols
- 4.3.2 Deadlock Prevention/Detection
- 4.3.3 Limiting Sharing
- 4.3.4 Triggering Copies and Merges
- 4.4 Results and Status
- 4.1 Introduction
- 5 A Transaction Model for Active Distributed Object Systems
- Alejandro Buchmann, M. Tamer Ozsu, Mark Hornick, Dimitrios Georgakopoulos, and Frank A. Manola
- 5.1 Introduction
- 5.2 A Characterization of Transaction Schemes
- 5.2.1 Correctness Criteria
- 5.2.2 Transaction Models
- 5.3 The DOM Transaction Model
- 5.3.1 Example of a DOM Transaction
- 5.3.2 Multitransactions
- 5.3.3 Nested Transactions
- 5.3.4 Compensating Transactions
- 5.3.5 Contingency Transactions
- 5.3.6 Vital and Non-vital Transactions
- 5.4 Formal Specification of the Model
- 5.4.1 Summary of the ACTA Formalism
- 5.4.2 Multitransactions
- 5.4.3 Nested Transactions
- 5.4.4 Contingency Transactions
- 5.4.5 Compensating Transactions
- 5.5 Conclusions and Future Work
- 6 A Transaction Model for an Open Publication Environment
- Peter Muth, Thomas C. Rakow, Wolfgang Klas, and Erich J. Newhold
- 6.1 Overview
- 6.2 Introduction
- 6.3 The Architecture of the Publication Environment and its Transaction Needs
- 6.3.1 Architecture
- 6.3.2 Requirements for the Transaction Model
- 6.4 Transaction Model
- 6.4.1 Object-Oriented Serializability
- 6.4.2 Object-Oriented Concurrency Control
- 6.4.3 Recovery
- 6.5 Transactions in the Publication Environment
- 6.5.1 Transaction Execution
- 6.5.2 The Impact of Distribution
- 6.5.3 The Impact of Heterogeneity
- 6.6 Conclusion
- 7 The ConTract Model
- Helmut Wächter and Andreas Reuter
- 7.1 Introduction and Overview
- 7.2 Transaction Support for Large Distributed Applications
- 7.3 ConTracts
- 7.3.1 Modelling Control Flow: Scripts and Steps
- 7.3.2 ConTract Programming Model
- 7.3.3 Transaction Model
- 7.3.4 User Interface for Controlling Large Distributed Applications
- 7.3.5 Forward Recovery and Context Management
- 7.3.6 Consistency Control and Resource Conflict Resolution
- 7.3.7 Compensation
- 7.3.8 Synchronization with Invariants
- 7.4 Implementation Issues
- 7.4.1 Flow Management
- 7.4.2 Transaction Management
- 7.4.3 Logging
- 7.4.4 Synchronization
- 7.4.5 Transactional Communication Service
- 7.5 Comparison with Other Work
- 7.5.1 Structural Extensions
- 7.5.2 Embedding Transactions in an Execution Environment
- 7.6 Conclusions
- 7.7 Sample Script
- 8 Dynamic Restructuring of Transactions
- Gail E. Kaiser and Calton Pu
- 8.1 Introduction
- 8.2 Requirements
- 8.3 Programmed Transactions
- 8.3.1 Definitions
- 8.3.2 Nested Transactions
- 8.4 User-Controlled Transactions
- 8.5 Applications
- 8.5.1 Editing
- 8.5.2 Design Environments
- 8.5.3 Multi-User Design Environments
- 8.6 Implementation Issues
- 8.7 Comparison to Related Work
- 8.8 Conclusions
- 9 Multidatabase Transaction and Query Processing in Logic
- Eva Kühn, Franz Puntigam, and Ahmed K. Elmargarmid
- 9.1 Introduction
- 9.2 Representation of MDBS Queries in Prolog
- 9.2.1 Dynamic and Static Integration
- 9.3 Transaction Control with Logic Programming
- 9.3.1 The Flex Transaction Model
- 9.3.2 Parallel Logic Programming
- 9.4 Query and Transaction Processing in VPL
- 9.4.1 Architecture
- 9.4.2 Operational Semantics of the VPL Language
- 9.4.3 Mapping Transactions into VPL Queries
- 9.5 Extending the Power of Flex Transactions
- 9.6 Conclusions
- 10 ACTA: The Saga Continues
- Panos K. Chrysanthis and Krithi Ramamritham
- 10.1 Introduction
- 10.2 The Formal ACTA Framework
- 10.2.1 Preliminaries
- 10.2.2 Effects of Transactions on Other Transactions
- 10.2.3 Objects and the Effects of Transactions on Objects
- 10.3 Characterization of Atomic Transactions
- 10.4 Characterization of Sagas
- 10.4.1 A Special Case of Sagas
- 10.5 Variations of the Sagas Model
- 10.5.1 Sagas with no Special Relation with Last Component
- 10.5.2 Sagas with Vital Components
- 10.5.3 Sagas of Sagas
- 10.5.4 Sagas with Non-Compensatable Components
- 10.6 Conclusions
- 11 A Transaction Manager Development Facility for Non Standard Database Systems
- Rainer Unland and Gunter Schlangeter
- 11.1 Introduction
- 11.2 Transaction types
- 11.2.1 Conventional transaction management
- 11.2.2 The concept of nested transactions
- 11.2.3 Fundamental rules of Moss' approach
- 11.3 Basic concepts and fundamental rules of the tool kit approach
- 11.3.1 Basic Concepts of the Tool Kit Approach
- 11.3.2 Fundamental rules of the tool kit approach
- 11.4 Characteristics of transaction types
- 11.4.1 Concurrency control scheme
- 11.4.2 Object visibility (access view and release view)
- 11.4.3 Task
- 11.4.4 Concurrent execution of children
- 11.4.5 Explicit cooperation (collaboration)
- 11.4.6 Recovery
- 11.4.7 Example
- 11.5 Lock modes
- 11.5.1 Motivation of our approach
- 11.5.2 Basic lock modes of the tool kit approach
- 11.5.3 The two effects of a lock
- 11.5.4 Locks in the context of nested transactions
- 11.5.5 Object related locks
- 11.5.6 Subject related lock
- 11.6 General rules of the tool kit approach
- 11.7 Brief overview of the structure of the tool kit
- 11.8 Concluding remarks
- 12 The S-Transaction Model
- Jar Veijalainen, Frank Eliassen, and Bernhard Holtkamp
- 12.1 Introduction
- 12.2. Autonomous environments and their requirements
- 12.2.1 Basic definitions of autonomy
- 12.2.2 O-autonomy
- 12.2.3 D-and M-autonomy and heterogeneity
- 12.2.4 C-autonomy
- 12.2.5 E-autonomy and erroneous and correct behavior
- 12.3 A gross architecture supporting S-transactions
- 12.3.1 Requirements for a transaction model coping with autonomy
- 12.3.2 The site architecture
- 12.3.3 The overall distributed architecture
- 12.4 Properties of S-transactions
- 12.4.1 A semi-formal model for the S-transactions
- 12.4.2 Syntactical correctness of S-transactions
- 12.4.3 Atomicity of S-transactions
- 12.4.4 Consistency preservation of S-transactions
- 12.4.5 Compensatability of local sub-S-transactions
- 12.5 A language supporting S-transactions, STDL
- 12.5.1 STDL/DDL
- 12.5.2 STDL/DML
- 12.5.3 Compensation
- 12.6 Applications of the S-transaction model
- 12.6.1 Banking
- 12.6.2 Computer Integrated Manufacturing
- 12.6.3 Software Engineering
- 12.7 Further developments
- 12.7.1 FRIL
- 12.7.2 The computational model of FRIL
- 12.8 Conclusion
- 13 Concepts and Applications of Multilevel Transactions and Open Nested Transactions
- Gerhard Weikum and Hans-J. Schek
- 13.1 Introduction
- 13.2 The Multilevel Transaction Model
- 13.2.1 Concepts of Multilevel Transactions
- 13.2.2 Limits of Multilevel Transactions
- 13.2.3. A Summary of the Multilevel Transaction Theory
- 13.2.4 Implementation Issues
- 13.3 The General Case of Open Nested Transactions
- 13.4 Relaxing the ACID Paradigm
- 13.4.1 Consistency-preservation
- 13.4.2 Isolation
- 13.4.3 Atomicity
- 13.4.4 Persistence
- 13.5 Applications of Open Nested Transactions
- 13.5.1 Extensible Database Systems
- 13.5.2 Federated Database Systems
- 13.5.3 Exploiting Operating-System Transactions
- 13.5.4 Object-oriented Database Systems
- 13.5.5 Intra-transaction Parallelism
- 13.6 An Application Study: Office Document Filing and Retrieval
- 13.7 Conclusion
- 14 Using Polytransactions to Manage Interdependent Data
- Amit P. Sheth, Marek Rusinkiewicz, and George Karabatis
- 14.1 Introduction
- 14.2 Specification of Interdatabase Dependencies
- 14.3 Polytransactions for Managing Interdependent Data
- 14.3.1 System Architecture
- 14.3.2 The Concept and Properties of Polytransactions
- 14.3.3 Executing Polytransactions
- 14.4 Interdatabase Dependency Schema
- 14.4.1 Specification of the Dependency Predicate
- 14.4.2 Specification of Mutual Consistency Requirements
- 14.4.3 Specification of consistency restoration procedures
- 14.4.4 Correctness of Dependency Specifications
- 14.5 Consistency of Interdependent Data
- 14.5.1 Definition of Consistency of Interdependent Data
- 14.6 Summary
- Biography
- Subject Index
- Author Index
- Edition: 1
- Published: April 1, 1992
- Imprint: Morgan Kaufmann
- Language: English
- Hardback ISBN: 9781558602144
- eBook ISBN: 9780080503776
AE
Ahmed K. Elmagarmid
Ahmed Elmagarmid is Professor of Computer Sciences at Purdue University. He is the editor-in-chief of Distributed and Parallel Databases: An International Journal, editor of Information Sciences, and editor of the Advances in Database Systems series. Elmagarmid's research interests focus on consistency aspects of distributed databases; heterogeneous, federated, and multidatabases; and transaction management for advanced database applications, distance learning, and video databases. He has active projects in mobile databases, video databases, and datawebs and is a founding member of the Purdue Online effort.