scispace - formally typeset
Search or ask a question

Showing papers on "Multiversion concurrency control published in 1998"


BookDOI
01 Jan 1998

187 citations


Patent
09 Mar 1998
TL;DR: In this paper, the authors use machine executable images of multiple program threads to locate and replace instructions which affect concurrency states of the threads and analyze the recorded concurrency state information.
Abstract: A computer implemented method detects concurrency errors in programs. Machine executable images of multiple program threads are instrumented to locate and replace instructions which affect concurrency states of the threads. Concurrency state information is recorded in a memory while the multiple threads are executing. The recorded concurrency state information is analyzed, and inconsistent dynamic concurrency state transitions are reported as concurrency errors.

94 citations


Journal ArticleDOI
TL;DR: A new concurrency control protocol for main-memory real-time database systems is presented, which is based on predeclaration of data requirements at a relation granularity, and offers the possibility of determining execution times without the effects of blocking and I/O.

42 citations


Proceedings Article
24 Aug 1998
TL;DR: A detailed comparison with the TSB-tree, both analytically and based on experiments with real implementations, shows that LHAM is highly superior in terms of insert performance, while query performance is in almost all cases at least as good as for the T SB-tree; in many cases it is much better.
Abstract: Numerous applications such as stock market or medical information systems require that both historical and current data be logically integrated into a temporal database. The underlying access method must support different forms of “time-travel” queries, the migration of old record versions onto inexpensive archive media, and high insert and update rates. This paper introduces a new access method for transaction-time temporal data, called the Logstructured History Data Access Method (LHAM) that meets these demands. The basic principle of LHAM is to partition the data into successive components based on the timestamps of the record versions. Components are assigned to different levels of a storage hierarchy, and incoming data is continuously migrated through the hierarchy. The paper discusses the LHAM concepts, including concurrency control and recovery, our full-fledged LHAM implementation, and experimental performance results based on this implementation. A detailed comparison with the TSB-tree, both analytically and based on experiments with real implementations, shows that LHAM is highly superior in terms of insert performance while query performance is in almost all cases at least as good as for the TSB-tree; in many cases it is much better,

35 citations


Journal ArticleDOI
TL;DR: A unified transaction model for databases with an arbitrary set of semantically rich operations is presented, and several sufficiently rich subclasses of prefix reducible schedules are proposed, and concurrency control protocols that guarantee both serializability and atomicity for schedules from these classes are designed.

35 citations


Journal ArticleDOI
TL;DR: The techniques developed in order to support transaction and concurrency control in a temporal DBMS that was implemented as an additional layer to a commercial DBMS are described and shown that the overhead introduced is negligible.

26 citations


Journal ArticleDOI
TL;DR: The proposed solution method provides the evaluation of the performance of concurrency control protocols in terms of the satisfaction rate of timing constraints in real-time database systems (RTDBSs).

13 citations


Journal ArticleDOI
TL;DR: A real-time two phase locking protocol, High Priority 2 Phase Locking (H2PL) is re-defined based on similarity, although the new protocol cannot ensure serializability, the concurrency of the system is higher and the amount of inconsistency in the database is tolerable.

13 citations


Proceedings ArticleDOI
20 Apr 1998
TL;DR: This paper shows that the ASPCP protocols provide higher potential concurrency for object-oriented systems than existing priority ceiling protocols, while still bounding priority inversion and preventing deadlock.
Abstract: This paper presents the affected set priority ceiling protocols (ASPCP) for concurrency control in real-time object-oriented systems. These protocols are based on a combination of semantic locking and priority ceiling techniques. This paper shows that the ASPCP protocols provide higher potential concurrency for object-oriented systems than existing priority ceiling protocols, while still bounding priority inversion and preventing deadlock.

12 citations


Proceedings ArticleDOI
13 Nov 1998
TL;DR: An integrated mechanism for concurrency control and recovery in real-time databases using a two-version approach to adjust the serializability of schedules in favor of higher-priority transactions, and to provide a consistent database image at client sites for local processing of read-only transactions.
Abstract: This paper proposes an integrated mechanism for concurrency control and recovery in real-time databases. A two-version approach is used to adjust the serializability of schedules in favor of higher-priority transactions, and, at the same time, to provide a consistent database image at client sites for local processing of read-only transactions. When the database crashes, a consistent database image is used, in return, to efficiently and predictably recover the database from failure. A two-version network-server-based architecture is proposed to support a diskless run-time logging mechanism and an effective write-through procedure.

11 citations


Journal ArticleDOI
TL;DR: This study shows the superiority of the locking-based concurrency control scheme based on so-called special classes for object-oriented databases with less locking overhead than existing works, for both single inheritance and multiple inheritance.
Abstract: In this paper, we present a locking-based concurrency control scheme for object-oriented databases (OODBs). Our scheme deals with class hierarchy which is an important property in OODBs. The existing concurrence controls for a class hierarchy perform well only for specific environments. Our scheme is based on so-called special classes and can be used for any applications with less locking overhead than existing works, for both single inheritance and multiple inheritance. In this study, we show the superiority of our scheme over existing works.

Journal ArticleDOI
Heung-Taek Kim1, Myoung Ho Kim1
TL;DR: This paper presents concepts of an invisible area and a t-lock to prevent retrieval anomaly and starvation of high transactions that may often occur in the previous works on secure concurrency control.

Proceedings ArticleDOI
01 Aug 1998
TL;DR: SimAda is a concurrency simulator, reengineered from the simulator given in M. Ben-Ari, Principles of Concurrent Programming, intended for teaching concurrency, both by running programs and by studying the implementation techniques.
Abstract: SimAda is a concurrency simulator, reengineered from the simulator given in M Ben-Ari, Principles of Concurrent Programming The language was written in Ada 95 to enhance portability and to utilise the structuring constructs of a modern language The concurrency constructs simulated include protected types which are new for Ada 95, as well as the Ada rendezvous Several task scheduling models can be chosen for experimentation SimAda is intended for teaching concurrency, both by running programs and by studying the implementation techniques


Proceedings ArticleDOI
26 Aug 1998
TL;DR: This paper proposes alternative correctness criteria, namely FR-serializability, for multiversion concurrency control protocols, and presents a new protocol for real-time secure database systems as one application area of the proposed serializability.
Abstract: Concurrency control protocols based on multiversions have been used in some commercial transaction processing systems in order to provide both the serializable executions of transactions and a higher degree of concurrency. In the existing protocols based on multiversions, transactions are scheduled so as to read the most recent version of each of data items for serializability. This feature sometimes causes unnecessary blockings of transactions. Thus, it is not desirable in some advanced database systems, which have additional features such as temporal constraints or security requirements. In this paper we first propose alternative correctness criteria, namely FR-serializability, for multiversion concurrency control protocols. Next, we present a new protocol for real-time secure database systems as one application area of the proposed serializability. We also present several examples to illustrate the behavior of the proposed protocol along with performance comparisons with other protocols.

Proceedings ArticleDOI
23 Feb 1998
TL;DR: The protocol creates no more than three versions of any data item, while guaranteeing that: update transactions never interfere with read-only transactions; the version advancement mechanism is completely asynchronous with (both update and read- only) user transactions; and reads do not acquire locks and write control information into the data items being read.
Abstract: We present an efficient protocol for multi-version concurrency control in distributed databases. The protocol creates no more than three versions of any data item, while guaranteeing that: update transactions never interfere with read-only transactions; the version advancement mechanism is completely asynchronous with (both update and read-only) user transactions; and read-only transactions do not acquire locks and do not write control information into the data items being read. This is an improvement over existing multi-versioning schemes for distributed databases, which either require a potentially unlimited number of versions, or require coordination between version advancement and user transactions. Our protocol can be applied in a centralized system also, where the improvement over existing techniques is in reducing the number of versions from four to three. The proposed protocol is valuable in large applications that currently shut off access to the system while managing version advancement manually, but now have a need for automating this process and providing continuous access to the data.

01 Jan 1998
TL;DR: A technique to discover patterns of concurrent behavior from traces of system events, based on a probabilistic analysis of the event traces, useful in a wide variety of software engineering tasks, including architecture discovery, reengineering, user interaction modeling, and software process improvement.
Abstract: Understanding the behavior of a system is crucial in being able to modify, maintain, and improve the system. A particularly difficult aspect of some system behaviors is concur-rency. While there are many techniques to specify intended concurrent behavior, there are few, if any, techniques to capture and model actual concurrent behavior. This paper presents a technique to discover patterns of concurrent behavior from traces of system events. The technique is based on a probabilistic analysis of the event traces. Using met-rics for the number, frequency, and regularity of event occurrences, a determination is made of the likely concurrent behavior being manifested by the system. The technique is useful in a wide variety of software engineering tasks, including architecture discovery, reengineering, user interaction modeling, and software process improvement. The content of the information does not necessarily reflect the position or the policy of the Government and no official endorsement should be inferred.


Proceedings ArticleDOI
06 Jan 1998
TL;DR: This paper proposes and investigates the logical concurrency control (LCC) concept as a solution to the problem of coarse-granularity locking at UDS, where a software module sits on top of the UDS and offers a higher-level service.
Abstract: Current research projects and database product extensions reflect the importance of unconventional database applications (for example, document processing and computer aided design). Unconventional applications differ from the conventional ones (for example, airline reservation) in the nature of transactions and data. The transactions may be complex, long and involve human interaction. The data includes small, structured objects as well as large, unstructured objects. The unstructured objects are stored in and managed by unstructured database management systems (UDS). UDS employs coarse-granularity locking which limit the concurrency and reduce the throughput of transactions. This paper deals with this problem of coarse-granularity locking at UDS. It proposes and investigates the logical concurrency control (LCC) concept as a solution. In LCC, a software module sits on top of the UDS and offers a higher-level service. This module employs application-domain-specific fine-granularity locking to achieve high concurrency.


Journal ArticleDOI
TL;DR: Two Phase Locking-Lock Write All (2PL-LW) performs better than the traditional protocols in meeting transaction deadlines in both disk-based and memory-resident RTDBS.

Journal Article
TL;DR: A concurrency control mechanism that deals with three important issues in object-oriented databases (OODBs): semantics of methods, nested method invocation and referentially shared object, and a way of automating commutativity of methods is presented.
Abstract: In this paper, we present a concurrency control mechanism that deals with three important issues in object-oriented databases (OODBs): semantics of methods, nested method invocation and referentially shared object. In our scheme, locks are required for the execution of methods instead of atomic operations. By doing this, we reduce the locking overhead and deadlocks due to lock escalation. Especially, if a method invokes one or more methods on the same object during its execution, our scheme does not incur additional overhead for those invoked methods. Also, we provide a way of automating commutativity of methods. In addition, we further increase concurrency with the use of runtime information.

Book ChapterDOI
19 Nov 1998
TL;DR: The 2VQL algorithm is proved to be better than other legacy algorithms in the decision supporting of operational system and prevents a query session from blocking the operation of other transactions.
Abstract: In decision supporting environments, a legacy operational system is needed to provide the additional facilities in order to manage the transaction that has the different characteristic from the traditional transaction. The most transactions that are used for decision support have a long-term read operation accessing a considerable portion of database. Therefore, the traditional concurrency control methods that are optimized to the on-line transaction processing cause the serious problem to the transaction management. The long delay of transaction processing cannot be avoided in those methods because of the lock conflict between the read operation of a decision supporting query and the write operation of an OLTP transaction. In this paper, transactions can be classified into two groups in decision supporting environment. One is the query session that consists of only read operations for decision support. The query session does not mind reading a possibly slightly old, but still consistent, version of the database. The other is the OLTP transaction that can have write operations for on-line transaction processing. According to our classification of transactions, we present a concurrency control algorithm that is called ‘Two Version Query Locking (2VQL)’. The 2VQL algorithm prevents a query session from blocking the operation of other transactions. It can be achieved by delaying the refresh process that exchanges old and new versions of an updated data. By our performance evaluation, the 2VQL algorithm is proved to be better than other legacy algorithms in the decision supporting of operational system.

01 Jan 1998
TL;DR: In this paper, the authors argue that despite the substantial literature on concurrency control and transaction models for orthogonal persistence, a basic question as to the interaction between concurrency and orthogonality has yet to be adequately addressed.
Abstract: Concurrency is a central pillar of the Java programming language, is implicit in the transactional model of computation adopted by most persistent systems, and has been widely studied in the context of orthogonal persistence. We argue that despite the substantial literature on concurrency control and transaction models for orthogonal persistence, a basic question as to the interaction between concurrency and orthogonal persistence has yet to be adequately addressed. The demands of orthogonality appear to place orthogonal persistence at odds with more general approaches to concurrency control. Given its stated objective of providing a ‘complete’ computational environment, the future of the orthogonal persistence vision in general, and persistent Java in particular, will depend, to some extent, on the release of this tension through the realization of new approaches to the integration of concurrency and persistence. This paper addresses both strict transactional and more ‘open’ approaches to managing concurrency in face of persistence, and examines difficulties with each approach. A simple transaction model that relieves some of these difficulties is presented and its limitations briefly examined.

01 Jan 1998
TL;DR: A new concurrency control protocol for main-memory real-time database systems is presented, which is based on predeclaration of data requirements at a relation granularity and offers the possibility of determining execution times without the effects of blocking and I/O, thereby allowing to give guarantees for the execution of high-priority transactions.
Abstract: Protocols developed so far for concurrency control in real-time database systems have assumed a dynamic acquisition of data resources as it is impossible to predict which instances of relations will actually be accessed by each transaction. In this papert, we present a new concurrency control protocol for main-memory real-time database systems, which is baaed on predeclaration of data requirements at a relation granularity. When a transaction is submitted, it is possible to detect with simple syntactical means which relations will be accessed by the transaction. Preacquisition of data resources enables the system to execute transactions in a conflict-free manner. The protocol also offers the possibility of determining execution times without the effects of blocking and I/O, thereby allowing us to give guarantees for the execution of high-priority transactions. Through a series of simulation experiments, the protocol is compared against some typical concurrency control protocols proposed recently for real-time database systems. 01998 Elsevier Science Ltd. All rights reserved


Proceedings ArticleDOI
12 Oct 1998
TL;DR: A light-weight optimistic concurrency control (OCC-light) scheduler has been designed, and it turns out that the scheduler overhead, rather than the concurrency is the most important factor in database performance.
Abstract: We optimize the speed of real-time databases by optimizing the scheduler. The performance of a database is directly linked to the environment it operates in, and we use environment characteristics as guidelines for the optimization. A typical telecom environment is investigated, and characteristics that are relevant to performance are derived. A theoretical study of database scheduler performance is combined with the characteristics of the telecom environment. Design issues are extracted from this combination. It turns out that the scheduler overhead, rather than the concurrency is the most important factor in database performance. With the derived issues in mind, a light-weight optimistic concurrency control (OCC-light) scheduler has been designed. The OCC-light is implemented in the Mnesia database. Experiments were conducted to compare OCC-light against the existing two phase locking (2PL) scheduler. The OCC-light compared favorably to 2PL, as was already suggested by our theoretical study.

Journal ArticleDOI
TL;DR: This paper provides a formal treatment of concurrency control when transactions are allowed access to extra data by discussing the inter-transaction dependencies that are induced when transactions access extra data and develops a spectrum of correctness criteria that apply when such transactions are considered.

Book ChapterDOI
01 Sep 1998
TL;DR: This paper investigates the efficiency of a distributed database management system and demonstrates that the VT synchronization approach is a viable alternative concurrency control method for distributed database systems and outpforms MVTO one.
Abstract: Virtual Time is the fundamental concept in optimistic synchronization schemes. In this paper, we investigate the efficiency of a distributed database management system. synchronized by virtual time using a LAN connected collection of SPARCS. To the best of our knowledge, there is little data reporting VT performance in DDBMS. The experimental results are compared with a multiversion timestamp ordering (MVTO) concurrency control method, a widely used technique in distributed databases, and approximately 25–30% reduction in the response time is observed when using the VT synchronization scheme. Our results demonstrate that the VT synchronization approach is a viable alternative concurrency control method for distributed database systems and outpforms MVTO one.

Journal ArticleDOI
TL;DR: The model is based on the transaction concept and resolves the issue of real-time control by using a distributed optimistic concurrency control protocol and provides for a flexible control mechanism by incorporating user locks using the concept of persistent lock transactions.