Compilers: principles, techniques, and tools
Compilers: principles, techniques, and tools
The Escrow transactional method
ACM Transactions on Database Systems (TODS)
ACM Transactions on Database Systems (TODS)
Information and Control
Concurrency control and recovery in database systems
Concurrency control and recovery in database systems
Concurrency control performance modeling: alternatives and implications
ACM Transactions on Database Systems (TODS)
Towards a General Concurrency Control Algorithm for Database Systems
IEEE Transactions on Software Engineering
The virtues of locking by symbolic names
Journal of Algorithms
Efficient and correct execution of parallel programs that share memory
ACM Transactions on Programming Languages and Systems (TOPLAS)
Locking performance in centralized databases
Locking performance in centralized databases
Using semantic knowledge of transactions to increase concurrency
ACM Transactions on Database Systems (TODS)
Analysis of database performance with dynamic locking
Journal of the ACM (JACM)
Performance Analysis of Two-Phase Locking
IEEE Transactions on Software Engineering
Using delayed commitment in locking protocols for real-time databases
SIGMOD '92 Proceedings of the 1992 ACM SIGMOD international conference on Management of data
Database tuning: a principled approach
Database tuning: a principled approach
On slicing programs with jump statements
PLDI '94 Proceedings of the ACM SIGPLAN 1994 conference on Programming language design and implementation
Relative serializability (extended abstract): an approach for relaxing the atomicity of transactions
PODS '94 Proceedings of the thirteenth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
Consistency of transactions and random batch
ACM Transactions on Database Systems (TODS)
Load control for locking: the “half-and-half” approach
PODS '90 Proceedings of the ninth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
On being optimistic about real-time constraints
PODS '90 Proceedings of the ninth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
Using semantic knowledge for transaction processing in a distributed database
ACM Transactions on Database Systems (TODS)
Multilevel atomicity—a new correctness criterion for database concurrency control
ACM Transactions on Database Systems (TODS)
Concurrency control in a system for distributed databases (SDD-1)
ACM Transactions on Database Systems (TODS)
Interval hierarchies and their application to predicate files
ACM Transactions on Database Systems (TODS)
A Theory of Safe Locking Policies in Database Systems
Journal of the ACM (JACM)
Concurrency Control Problem for Database Systems
Concurrency Control Problem for Database Systems
Executive Briefing: Advances in Concurrency Control and Transaction Processing
Executive Briefing: Advances in Concurrency Control and Transaction Processing
Transaction Processing: Concepts and Techniques
Transaction Processing: Concepts and Techniques
Performance Limits of Two-Phase Locking
Proceedings of the Seventh International Conference on Data Engineering
Group Commit Timers and High Volume Transaction Systems
Proceedings of the 2nd International Workshop on High Performance Transaction Systems
Modeling and evaluation of database concurrency control algorithms
Modeling and evaluation of database concurrency control algorithms
Concurrency control: methods, performance, and analysis
ACM Computing Surveys (CSUR)
Using Versions in Update Transactions: Application to Integrity Checking
VLDB '97 Proceedings of the 23rd International Conference on Very Large Data Bases
Promises and Realities of Active Database Systems
VLDB '95 Proceedings of the 21th International Conference on Very Large Data Bases
Scalable Distributed Query and Update Service Implementations for XML Document Elements
RIDE '01 Proceedings of the 11th International Workshop on research Issues in Data Engineering
Speculative Locking Protocols to Improve Performance for Distributed Database Systems
IEEE Transactions on Knowledge and Data Engineering
Efficient processing of client transactions in real-time
Distributed and Parallel Databases
Making snapshot isolation serializable
ACM Transactions on Database Systems (TODS)
Optimistic intra-transaction parallelism on chip multiprocessors
VLDB '05 Proceedings of the 31st international conference on Very large data bases
Application of snapshot isolation protocol to concurrent processing of long transactions
DBA'06 Proceedings of the 24th IASTED international conference on Database and applications
Automating the detection of snapshot isolation anomalies
VLDB '07 Proceedings of the 33rd international conference on Very large data bases
Incrementally parallelizing database transactions with thread-level speculation
ACM Transactions on Computer Systems (TOCS)
Proceedings of the ACM/IFIP/USENIX 2003 International Conference on Middleware
Automatic atomic region identification in shared memory SPMD programs
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles
ACM SIGOPS 24th Symposium on Operating Systems Principles
Transaction chains: achieving serializability with low latency in geo-distributed storage systems
Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles
Hi-index | 0.00 |
Chopping transactions into pieces is good for performance but may lead to nonserializable executions. Many researchers have reacted to this fact by either inventing new concurrency-control mechanisms, weakening serializability, or both. We adopt a different approach. We assume a user who—has access only to user-level tools such as (1) choosing isolation degrees 1ndash;4, (2) the ability to execute a portion of a transaction using multiversion read consistency, and (3) the ability to reorder the instructions in transaction programs; and —knows the set of transactions that may run during a certain interval (users are likely to have such knowledge for on-line or real-time transactional applications).Given this information, our algorithm finds the finest chopping of a set of transactions TranSet with the following property: If the pieces of the chopping execute serializably, then TranSet executes serializably. This permits users to obtain more concurrency while preserving correctness. Besides obtaining more intertransaction concurrency, chopping transactions in this way can enhance intratransaction parallelism.The algorithm is inexpensive, running in O(n×(e+m)) time, once conflicts are identified, using a naive implementation, where n is the number of concurrent transactions in the interval, e is the number of edges in the conflict graph among the transactions, and m is the maximum number of accesses of any transaction. This makes it feasible to add as a tuning knob to real systems.