Results 1 - 10
of
35
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 388 (10 self)
- Add to MetaCart
(Show Context)
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
One Size Fits All: An Idea Whose Time has Come and Gone
- In Proceedings of the International Conference on Data Engineering (ICDE
, 2005
"... The last 25 years of commercial DBMS development can be summed up in a single phrase: “One size fits all”. This phrase refers to the fact that the traditional DBMS architecture (originally designed and optimized for business data processing) has been used to support many data-centric applications wi ..."
Abstract
-
Cited by 98 (4 self)
- Add to MetaCart
(Show Context)
The last 25 years of commercial DBMS development can be summed up in a single phrase: “One size fits all”. This phrase refers to the fact that the traditional DBMS architecture (originally designed and optimized for business data processing) has been used to support many data-centric applications with widely varying characteristics and requirements. In this paper, we argue that this concept is no longer applicable to the database market, and that the commercial world will fracture into a collection of independent database engines, some of which may be unified by a common front-end parser. We use examples from the stream-processing market and the datawarehouse market to bolster our claims. We also briefly discuss other markets for which the traditional architecture is a poor fit and argue for a critical rethinking of the current factoring of systems services into products. 1.
ARIES/IM: An Efficient and High Concurrency Index Management Method Using Write-ahead Logging
- PROCEEDINGS OF THE 1992 ACM SIGMOD INTERNATIONAL CONFERENCE ON MANAGEMENT OF DATA
, 1992
"... This paper provides a comprehensive treatment of index management in transaction systems. We present a method, called ARIES/IM (Algorithm for Recovery and Isolation Exploiting Semantics for Index Management), for concurrency control and recovery of B+-trees. ARIES/IM guarantees serializability and u ..."
Abstract
-
Cited by 97 (6 self)
- Add to MetaCart
This paper provides a comprehensive treatment of index management in transaction systems. We present a method, called ARIES/IM (Algorithm for Recovery and Isolation Exploiting Semantics for Index Management), for concurrency control and recovery of B+-trees. ARIES/IM guarantees serializability and uses write-ahead logging for recovery. It supports very high concurrency and good performance by (1) treating as the lock of a key the same lock as the one on the corresponding record data in a data page (e.g., at the record level), (2) not acquiring, in the interest of permitting very high concurrency, commit duration locks on index pages even during index structure modification operations (SMOs) like page splits and page deletions, and (3) allowing retrievals, inserts, and deletes to go on concurrently with SMOs. During restart recovery, any necessary redos of index changes are always performed in a page-oriented fashion (i.e., without traversing the index tree) and, during normal processing and restart recovery, whenever possible undos are performed in a page-oriented fashion. ARIES/IM permits different granularities of locking to be supported in a flexible manner. A subset of ARIES/IM has been implemented in the OS/2 Extended Edition Database Manager. Since the locking ideas of ARIES/IM have general applicability, some of them have also been implemented in SQL/DS and the VM Shared File System, even though those systems use the shadow-page technique for recovery.
MLR: A Recovery Method for Multi-level Systems
, 1991
"... To achieve high concurrency in a database system has meant building a system that copes well with important special cases. Recent work on multilevel systems suggests a systematic way of providing high concurrency. A multi-level system using locks permits restrictive low level locks of a subtransacti ..."
Abstract
-
Cited by 51 (8 self)
- Add to MetaCart
To achieve high concurrency in a database system has meant building a system that copes well with important special cases. Recent work on multilevel systems suggests a systematic way of providing high concurrency. A multi-level system using locks permits restrictive low level locks of a subtransaction to be replaced with less restrictive high level locks when a subtransaction commits, hence enhancing concurrency. This is possible because sub-transactions can be undone by executing high level compensation actions rather than by restoring a prior lower level state. We describe a recovery scheme, called Multi-Level Recovery (MLR) that logs this high level undo operation with the commit record for the subtransaction that it compensates, posting log records to only a single log. A variant of the method copes with nested transactions, and both nested and multi-level transactions can be treated in a unified fashion.
Concurrency Control Issues in Nested Transactions
, 1993
"... The concept of nested transactions offers more decomposable execution units and finer grained control over concurrency and recovery than `flat' transactions. Furthermore, it supports the decomposition of a `unit of work' into subtasks and their appropriate distribution in a computer system ..."
Abstract
-
Cited by 37 (2 self)
- Add to MetaCart
The concept of nested transactions offers more decomposable execution units and finer grained control over concurrency and recovery than `flat' transactions. Furthermore, it supports the decomposition of a `unit of work' into subtasks and their appropriate distribution in a computer system as a prerequisite of intra-transaction parallelism. However, to exploit its full potential, suitable granules of concurrency control as well as access modes for shared data are necessary. In this paper, we investigate various issues of concurrency control for nested transactions. First of all, the mechanisms for cooperation and communication within nested transactions should not impede parallel execution of transactions, neither among parent and children nor among siblings. Therefore,a model for nested transactions is proposed allowing for effective exploitation of intra-transaction parallelism. Starting with a set of basic locking rules, we introduce the concept of `downward inheritance of locks' to make data manipulated by a parent available to its children. To support supervised and restricted access, this concept is refined to `controlled downward inheritance'. The initial concurrency control scheme was based upon S-X locks for `flat', non-overlapping data objects. In order to adjust this scheme to the needs of practical applications, a set of concurrency control rules is derived for generalized lock modes described by a compatibility matrix. Moreover, these rules are combined with a hierarchical locking scheme to improve selective access to data granules of varying sizes. After having tied together both types of hierarchies (transaction and object hierarchies) it could be shown how `controlled downward inheritance' for hierarchical objects may be achieved in nested transactions...
Redo Recovery after System Crashes
- In International Conference on Very Large Data Bases
, 1995
"... : This paper defines a framework for explaining redo recovery after a system crash. In this framework, an installation graph explains the order in which operations must be installed into the stable database if it is to remain recoverable. This installation graph is a significantly weaker ordering on ..."
Abstract
-
Cited by 22 (5 self)
- Add to MetaCart
(Show Context)
: This paper defines a framework for explaining redo recovery after a system crash. In this framework, an installation graph explains the order in which operations must be installed into the stable database if it is to remain recoverable. This installation graph is a significantly weaker ordering on operations than the conflict graph from concurrency control. We use the installation graph to devise (i) a cache management algorithm for writing data from the volatile cache to the stable database, (ii) the specification of a redo test used to choose the operations on the log to replay during recovery, and (iii) an idempotent recovery algorithm based on this test; and we prove that these cache management and recovery algorithms are correct. Most pragmatic recovery methods depend on constraining the kinds of operations that can appear in the log, but our framework allows arbitrary logged operations. We use our framework to explain pragmatic methods that constrain the logged operations to re...
Concurrency Control and Recovery Algorithms in Nested Transaction Environment and Their Proofs of Correctness
- The Computer Journal
, 1995
"... In this paper, we present a study on the concurrency control and recovery algorithms in nested transaction environment. We have reviewed the work done in the area of nested transaction modelling, its applications in object-oriented and mobile databases, and in workflow models. We have contrasted var ..."
Abstract
-
Cited by 10 (6 self)
- Add to MetaCart
(Show Context)
In this paper, we present a study on the concurrency control and recovery algorithms in nested transaction environment. We have reviewed the work done in the area of nested transaction modelling, its applications in object-oriented and mobile databases, and in workflow models. We have contrasted various nested transaction models by discussing their advantages and disadvantages. We have outlined some important future research directions in the area of nested transaction processing. 1.
Supporting Parallelism in Engineering Databases by Nested Transactions
, 1992
"... Non-standard database systems supporting complex engineering applications are prime candidates for the exploitation of inherent parallelism in order to reduce the response time for user requests. Nested transactions are proposed as a control structure to achieve medium or even small grain parallelis ..."
Abstract
-
Cited by 8 (2 self)
- Add to MetaCart
Non-standard database systems supporting complex engineering applications are prime candidates for the exploitation of inherent parallelism in order to reduce the response time for user requests. Nested transactions are proposed as a control structure to achieve medium or even small grain parallelism. This paper investigates the design concepts and describes an implementation of the transaction management in a multi-layered database system running in a workstation-server environment. The tasks of the transaction management are structured according to the ACID principle: a transaction manager is responsible for the Atomicity property; furthermore it coordinates three components. A consistency manager achieves Consistency preservation thereby allowing for deferred control or maintenance due to transaction nesting. A lock manager enables Isolated execution where our locking protocol is designed for parent/child as well as sibling parallelism in a transaction hierarchy. Finally, a recovery manager takes care of various failures according to our extended failure model and accomplishes Durability of database updates.
A multi-level architecture for distributed object bases
- in ‘Proceedings of the 5th International Conference on Enterprise Information Systems (ICEIS
, 2003
"... Abstract: The work described in this article arises from two needs. First, there is still a need for providing more sophisticated database systems than just relational ones. Secondly, there is a growing need for distributed databases. These needs are adressed by fragmenting schemata of a generic obj ..."
Abstract
-
Cited by 7 (6 self)
- Add to MetaCart
(Show Context)
Abstract: The work described in this article arises from two needs. First, there is still a need for providing more sophisticated database systems than just relational ones. Secondly, there is a growing need for distributed databases. These needs are adressed by fragmenting schemata of a generic object data model and providing an architecture for its implementation. Key features of the architecture are the use of abstract communicating agents to realize database transactions and queries, the use of an extended remote procedure call to enable remote agents to communicate with one another, and the use of multi-level transactions. Linguistic reflection is used to map database schemata to the level of the agents. Transparency for the users is achieved by using dialogue objects, which are extended views on the database. 1