Nested transactions: an approach to reliable distributed computing
Nested transactions: an approach to reliable distributed computing
Concurrency control and recovery in database systems
Concurrency control and recovery in database systems
Distributed programming in Argus
Communications of the ACM
Camelot and Avalon: a distributed transaction facility
Camelot and Avalon: a distributed transaction facility
Using semantic knowledge for transaction processing in a distributed database
ACM Transactions on Database Systems (TODS)
Guardians and Actions: Linguistic Support for Robust, Distributed Programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Transaction Processing: Concepts and Techniques
Transaction Processing: Concepts and Techniques
Integrating Groups and Transactions: A Fault-Tolerant Extension of Ada
Ada-Europe '98 Proceedings of the 1998 Ada-Europe International Conference on Reliable Software Technologies
Ada Europe '01 Proceedings of the 6th Ade-Europe International Conference Leuven on Reliable Software Technologies
Transactions and groups as generic building blocks for software fault tolerance
Ada-Europe'03 Proceedings of the 8th Ada-Europe international conference on Reliable software technologies
Hi-index | 0.00 |
The granularity of concurrency control has a big impact on the performance of transactional systems. Concurrency control granularity and data granularity (data size) are usually the same. The effect of this coupling is that if a coarse granularity is used, the overhead of data access (number of disk accesses) is reduced, but also the degree of concurrency. On the other hand, if a fine granularity is chosen to achieve a higher degree of concurrency (there are less conflicts), the cost of data access is increased (each data item is accessed independently, which increases the number of disk accesses). There have been some proposals where data can be dynamically clustered/unclustered to increase either concurrency or data access depending on the application usage of data. However, concurrency control and data granularity remain tightly coupled. In Transactional Drago, a programming language for building distributed transactional applications, concurrency control has been uncoupled from data granularity, thus allowing to increase the degree of concurrency without degrading data access. This paper describes this approach and its implementation in Ada 95.