The traditional lock manager (LM) seriously limits the transaction throughput of the main memory database systems (MMDB). In this paper, we introduce dependence-cognizant locking (DCLP), an efficient improvement to the traditional LM, which dramatically reduces the locking space while offering efficiency. With DCLP, one transaction and its direct successors are collocated in its context. Whenever a transaction is committed, it wakes up its direct successors immediately avoiding the expensive operations, such as lock detection and latch contention. We also propose virtual transaction which has better time and space complexity by compressing continuous read-only transactions/operations. We implement DCLP in Calvin and carry out experiments in...
A shared data structure is lock-free if its operations do not require mutual exclusion. If one proce...
Main Memory Database Systems (MMDBs) have been studied since the 80s [3,4], when memory was quite co...
. Two-phase locking is a standard method for managing concurrent transactions in database systems. I...
Locking is widely used as a concurrency control mechanism in database systems. As more OLTP database...
Significant performance advantages can be realized by implementing a database system on a cache-cohe...
Concurrency control provides multi-user access to a database system, while ensuring concurrent trans...
Transaction processing workloads provide ample request level concurrency which highly parallel archi...
AbstractIn this paper, we extend the traditional relationships between locks, i.e., shared and non-s...
Concurrency control is a cornerstone of distributed database engines and storage systems. In pursuit...
A database system optimized for in-memory storage can support much higher transaction rates than cur...
Multi-core scalability is one of the most important features for database systems running on today's...
A shared data structure is lock-free if its operations do not require mutual exclusion. If one proce...
Conventional lock implementations serialize access to critical sections guarded by the same lock, pr...
A shared data structure is lock-free if its operations do not require mutual exclusion. If one proce...
Although the general concepts provided by the standard concurrency control theory (e. g. [BHG87]) re...
A shared data structure is lock-free if its operations do not require mutual exclusion. If one proce...
Main Memory Database Systems (MMDBs) have been studied since the 80s [3,4], when memory was quite co...
. Two-phase locking is a standard method for managing concurrent transactions in database systems. I...
Locking is widely used as a concurrency control mechanism in database systems. As more OLTP database...
Significant performance advantages can be realized by implementing a database system on a cache-cohe...
Concurrency control provides multi-user access to a database system, while ensuring concurrent trans...
Transaction processing workloads provide ample request level concurrency which highly parallel archi...
AbstractIn this paper, we extend the traditional relationships between locks, i.e., shared and non-s...
Concurrency control is a cornerstone of distributed database engines and storage systems. In pursuit...
A database system optimized for in-memory storage can support much higher transaction rates than cur...
Multi-core scalability is one of the most important features for database systems running on today's...
A shared data structure is lock-free if its operations do not require mutual exclusion. If one proce...
Conventional lock implementations serialize access to critical sections guarded by the same lock, pr...
A shared data structure is lock-free if its operations do not require mutual exclusion. If one proce...
Although the general concepts provided by the standard concurrency control theory (e. g. [BHG87]) re...
A shared data structure is lock-free if its operations do not require mutual exclusion. If one proce...
Main Memory Database Systems (MMDBs) have been studied since the 80s [3,4], when memory was quite co...
. Two-phase locking is a standard method for managing concurrent transactions in database systems. I...