Results 1 - 10
of
44
Aries: A transaction recovery method supporting fine-granularity locking and partial rollbacks using write-ahead logging
- ACM Transactions on Database Systems
, 1992
"... In this paper we present a simple and efficient method, called ARIES ( Algorithm for Recouery and Isolation Exploiting Semantics), which supports partial rollbacks of transactions, finegranularity (e.g., record) locking and recovery using write-ahead logging (WAL). We introduce the paradigm of repea ..."
Abstract
-
Cited by 277 (8 self)
- Add to MetaCart
In this paper we present a simple and efficient method, called ARIES ( Algorithm for Recouery and Isolation Exploiting Semantics), which supports partial rollbacks of transactions, finegranularity (e.g., record) locking and recovery using write-ahead logging (WAL). We introduce the paradigm of repeating history to redo all missing updates before performing the rollbacks of the loser transactions during restart after a system failure. ARIES uses a log sequence number in each page to correlate the state of a page with respect to logged updates of that page. All updates of a transaction are logged, including those performed during rollbacks. By appropriate chaining of the log records written during rollbacks to those written during forward progress, a bounded amount of logging is ensured during rollbacks even in the face of repeated failures during restart or of nested rollbacks We deal with a variety of features that are very Important in building and operating an industrial-strength transaction processing system ARIES supports fuzzy checkpoints, selective and deferred restart, fuzzy image copies, media recovery, and high concurrency lock modes (e. g., increment /decrement) which exploit the semantics of the operations and require the ability to perform operation logging. ARIES is flexible with respect to the kinds of buffer management policies that can be implemented. It supports objects of
Concurrency control in advanced database applications
- ACM Computing Surveys
, 1991
"... Concurrency control has been thoroughly studied in the context of traditional database applications such as banking and airline reservations systems. There are relatively few studies, however, that address the concurrency control issues of advanced database applications such as CAD/CAM and software ..."
Abstract
-
Cited by 160 (16 self)
- Add to MetaCart
Concurrency control has been thoroughly studied in the context of traditional database applications such as banking and airline reservations systems. There are relatively few studies, however, that address the concurrency control issues of advanced database applications such as CAD/CAM and software development environments. The
Synthesis of Extended Transaction Models using ACTA
- ACM TRANSACTIONS ON DATABASE SYSTEMS
, 1994
"... ACTA is a comprehensive transaction framework that facilitates the formal description of properties of extended transaction models. Specifically, using ACTA, one can specify and reason about (1) the effects of transactions on objects and (2) the interactions between transactions. This paper presents ..."
Abstract
-
Cited by 99 (11 self)
- Add to MetaCart
ACTA is a comprehensive transaction framework that facilitates the formal description of properties of extended transaction models. Specifically, using ACTA, one can specify and reason about (1) the effects of transactions on objects and (2) the interactions between transactions. This paper presents ACTA as a tool for the synthesis of extended transaction models, one which supports the development and analysis of new extended transaction models in a systematic manner. Here, this is demonstrated by deriving new transaction definitions (1) by modifying the specifications of existing transaction models, (2) by combining the specifications of existing models and (3) by starting from first principles. To exemplify the first, new models are synthesized from atomic transactions and join transactions. To illustrate the second, we synthesize a model that combines aspects of the nested and split transaction models. We demonstrate the latter by deriving the specification of an open nested transa...
ACTA: A Framework for Specifying and Reasoning about Transaction Structure and Behavior
- In Proceedings of the ACM SIGMOD International Conference on Management of Data
, 1990
"... Recently, a number of extensions to the traditional transaction model have been proposed to support new information-intensive applications such as CAD/CAM and software development. However, these extended models capture only a subset of interactions that can be found in such applications, and repres ..."
Abstract
-
Cited by 94 (13 self)
- Add to MetaCart
Recently, a number of extensions to the traditional transaction model have been proposed to support new information-intensive applications such as CAD/CAM and software development. However, these extended models capture only a subset of interactions that can be found in such applications, and represent only some of the points within the spectrum of interactions possible in competitive and cooperative environments. ACTA is a formalizable framework developed for characterizing the whole spectrum of interactions. The ACTA framework is not yet another transaction model, but is intended to unify the existing models. ACTA allows for specifying the structure and the behavior of transactions as well as for reasoning about the concurrency and recovery properties of the transactions. In ACTA, the semantics of interactions are expressed in terms of transactions' effects on the commit and abort of other transactions and on objects ' state and concurrency status (i.e., synchronization state). Its ability to capture the semantics of previously proposed transaction models is indicative of its generality. The reasoning capabilities of this framework have also been tested by using the framework to study the properties of a new model that is derived by combining two existing transaction models.
Apologizing Versus Asking Permission: Optimistic Concurrency Control for Abstract Data Types
- ACM Transactions on Database Systems
, 1990
"... An optimistic concurrency control technique is one that allows transactions to execute without synchronization, relying on commit-time validation to ensure serializability. Several new optimistic concurrency control techniques for objects in decentralized distributed systems are described here, thei ..."
Abstract
-
Cited by 70 (0 self)
- Add to MetaCart
An optimistic concurrency control technique is one that allows transactions to execute without synchronization, relying on commit-time validation to ensure serializability. Several new optimistic concurrency control techniques for objects in decentralized distributed systems are described here, their correctness and optimality properties are proved, and the circumstances under which each is likely to be useful are characterized. Unlike many methods that classify operations only as Reads or Writes, these techniques syste-matically exploit type-specific properties of objects to validate more interleavings. Necessary and sufficient validation conditions can be derived directly from an object’s data type specification. These techniques are also modular: they can be applied selectively on a per-object (or even per-operation) basis in conjunction with standard pessimistic techniques such as two-phase locking, permitting optimistic methods to be introduced exactly where they will be most effective. These techniques can be used to reduce the algorithmic complexity of achieving high levels of concurrency, since certain scheduling decisions that are NP-complete for pessimistic schedulers can be validated after the fact in time, independent of the level of concurrency. These techniques can also enhance the availability of replicated data, circumventing certain tradeoffs between concurrency
Optimistic parallelism requires abstractions
- In PLDI
, 2007
"... Irregular applications, which manipulate large, pointer-based data structures like graphs, are difficult to parallelize manually. Automatic tools and techniques such as restructuring compilers and runtime speculative execution have failed to uncover much parallelism in these applications, in spite o ..."
Abstract
-
Cited by 65 (8 self)
- Add to MetaCart
Irregular applications, which manipulate large, pointer-based data structures like graphs, are difficult to parallelize manually. Automatic tools and techniques such as restructuring compilers and runtime speculative execution have failed to uncover much parallelism in these applications, in spite of a lot of effort by the research community. These difficulties have even led some researchers to wonder if there is any coarse-grain parallelism worth exploiting in irregular applications. In this paper, we describe two real-world irregular applications: a Delaunay mesh refinement application and a graphics application that performs agglomerative clustering. By studying the algorithms and data structures used in these applications, we show that there is substantial coarse-grain, data parallelism in these applications, but that this parallelism is very dependent on the input data and therefore cannot be uncovered by compiler analysis. In principle, optimistic techniques such as thread-level speculation can be used to uncover this parallelism, but we argue that current implementations cannot accomplish this because they do not use the proper abstractions for the data structures in these programs. These insights have informed our design of the Galois system, an object-based optimistic parallelization system for irregular applications. There are three main aspects to Galois: (1) a small number of syntactic constructs for packaging optimistic parallelism as iteration over ordered and unordered sets, (2) assertions about methods in class libraries, and (3) a runtime scheme for detecting and recovering from potentially unsafe accesses to shared memory made by an optimistic computation. We show that Delaunay mesh generation and agglomerative clustering can be parallelized in a straight-forward way using the Galois approach, and we present experimental measurements to show that this approach is practical. These results suggest that Galois is a practical approach to exploiting data parallelism in irregular programs.
ACTA: The SAGA Continues
- Database Transaction Models For Advanced Applications
, 1992
"... ACTA is a comprehensive transaction framework that permits a transaction modeler to specify the effects of extended transactions on each other and on objects in the database. ACTA allows the specification of (1) the interactions between transactions in terms of relationships between significant (tra ..."
Abstract
-
Cited by 57 (7 self)
- Add to MetaCart
ACTA is a comprehensive transaction framework that permits a transaction modeler to specify the effects of extended transactions on each other and on objects in the database. ACTA allows the specification of (1) the interactions between transactions in terms of relationships between significant (transaction management) events, such as begin, commit, abort, delegate, split, and join, pertaining to different transactions and (2) transactions' effects on objects' state and concurrency status (i.e., synchronization state). Various extended traditional models have been proposed to deal with applications that involve reactive (endless), open-ended (long-lived) and collaborative (interactive) activities. One such model is Sagas [GS87] A Saga is a set of relatively independent (component) transactions T 1 , T 2 ,..., Tn which can interleave in any way with component transactions of other Sagas. Components can commit even before the Saga commits. However, if the Saga subsequently aborts, effec...
Object orientation in multidatabase systems
- ACM Computing Surveys
, 1995
"... Abstract A multidatabase system (MDBS) is a confederation of pre-existing distributed, heterogeneous, and autonomous database systems. There has been a recent proliferation of research suggesting the application of object-oriented techniques to facilitate the complex task of designing and implementi ..."
Abstract
-
Cited by 56 (1 self)
- Add to MetaCart
Abstract A multidatabase system (MDBS) is a confederation of pre-existing distributed, heterogeneous, and autonomous database systems. There has been a recent proliferation of research suggesting the application of object-oriented techniques to facilitate the complex task of designing and implementing MDBSs. Although this approach seems promising, the lack of a general framework impedes any further development. The goal of this paper is to provide a concrete analysis and categorization of the various ways in which object orientation has affected the task of designing and implementing MDBSs.
A Transaction Model for Active Distributed Object Systems
, 1992
"... data types are programming language constructs that encapsulate the representations of a set of objects and a set of operations on these objects. The operations are the only means of accessing and manipulating the objects. From the perspective of transaction processing, ADTs introduce a need to deal ..."
Abstract
-
Cited by 49 (4 self)
- Add to MetaCart
data types are programming language constructs that encapsulate the representations of a set of objects and a set of operations on these objects. The operations are the only means of accessing and manipulating the objects. From the perspective of transaction processing, ADTs introduce a need to deal with abstract operations. The operations of transactions that execute on ADTs are not simple reads and writes, but are more abstract, such 5.2 Transaction Schemes 13 Transaction Structure simple objects instances of ADTs complex objects flat transactions closed nesting open nesting combinations active objects [DAYA88] [STON90] [BADR88] [WEIH88] [HERL90] [ESWA75] [BERN87] [MOSS85] [GARC87] [GARC90] DOM [ELMA90] [PU88] [FEKE89] [BANC85] [KOTZ88] [FARR89] Object Structure FIGURE 5.2 Representation of transaction model space and examples. The labels for the references are given following each citation in the Bibliography. 14 Chapter 5. Transaction Model for Distributed Object Systems as Ins...
Recent-secure authentication: enforcing revocation in distributed systems
- In Proc. 19th IEEE Symposium on Security and Privacy
, 1995
"... A general method is described for formally specifying and reasoning about distributed systems with any desired degree of immediacy for revoking authentication. To effect revocation, ‘authenticating entities’ impose freshness constraints on credentials or authenticated statements made by trusted inte ..."
Abstract
-
Cited by 34 (7 self)
- Add to MetaCart
A general method is described for formally specifying and reasoning about distributed systems with any desired degree of immediacy for revoking authentication. To effect revocation, ‘authenticating entities’ impose freshness constraints on credentials or authenticated statements made by trusted intermediaries. If fresh statements are not presented, then the authentication is questionable. Freshness constraints are derived from initial policy assumptions and authentic statements made by trusted intermediaries. By adjusting freshness constraints, the delay for certain revocation can be arbitrarily bounded. We illustrate how the inclusion of freshness policies within certificates enables the design of a secure and highly available revocation service. We illustrate the application of the method and new techniques in an example. 1.

