Database partitioning in a cluster of processors
ACM Transactions on Database Systems (TODS)
Transaction management in the R* distributed database management system
ACM Transactions on Database Systems (TODS)
Multi-disk management algorithms
SIGMETRICS '87 Proceedings of the 1987 ACM SIGMETRICS conference on Measurement and modeling of computer systems
Concurrency control performance modeling: alternatives and implications
ACM Transactions on Database Systems (TODS)
Multiprocessor main memory transaction processing
DPDS '88 Proceedings of the first international symposium on Databases in parallel and distributed systems
Efficient optimistic concurrency control using loosely synchronized clocks
SIGMOD '95 Proceedings of the 1995 ACM SIGMOD international conference on Management of data
Revisiting commit processing in distributed database systems
SIGMOD '97 Proceedings of the 1997 ACM SIGMOD international conference on Management of data
Prototyping Bubba, A Highly Parallel Database System
IEEE Transactions on Knowledge and Data Engineering
The Gamma Database Machine Project
IEEE Transactions on Knowledge and Data Engineering
Main Memory Database Systems: An Overview
IEEE Transactions on Knowledge and Data Engineering
Data placement in shared-nothing parallel database systems
The VLDB Journal — The International Journal on Very Large Data Bases
Physical database design decision algorithms and concurrent reorganization for parallel database systems
Speculative Locking Protocols to Improve Performance for Distributed Database Systems
IEEE Transactions on Knowledge and Data Engineering
AutoPart: Automating Schema Design for Large Scientific Databases Using Data Partitioning
SSDBM '04 Proceedings of the 16th International Conference on Scientific and Statistical Database Management
Integrating vertical and horizontal partitioning into automated physical database design
SIGMOD '04 Proceedings of the 2004 ACM SIGMOD international conference on Management of data
Sprint: a middleware for high-performance transaction processing
Proceedings of the 2nd ACM SIGOPS/EuroSys European Conference on Computer Systems 2007
Timestamp-based algorithms for concurrency control in distributed database systems
VLDB '80 Proceedings of the sixth international conference on Very Large Data Bases - Volume 6
IEEE Transactions on Computers
Distribution Design of Logical Database Schemas
IEEE Transactions on Software Engineering
The end of an architectural era: (it's time for a complete rewrite)
VLDB '07 Proceedings of the 33rd international conference on Very large data bases
OLTP through the looking glass, and what we found there
Proceedings of the 2008 ACM SIGMOD international conference on Management of data
Supporting table partitioning by reference in oracle
Proceedings of the 2008 ACM SIGMOD international conference on Management of data
Data-oriented transaction execution
Proceedings of the VLDB Endowment
A formal characterization of SI-based ROWA replication protocols
Data & Knowledge Engineering
The case for determinism in database systems
Proceedings of the VLDB Endowment
Data-oriented transaction execution
Proceedings of the VLDB Endowment
Scalable transactions in the cloud: partitioning revisited
OTM'10 Proceedings of the 2010 international conference on On the move to meaningful internet systems: Part II
High-throughput transaction executions on graphics processors
Proceedings of the VLDB Endowment
Fast checkpoint recovery algorithms for frequently consistent applications
Proceedings of the 2011 ACM SIGMOD International Conference on Management of data
PLP: page latch-free shared-everything OLTP
Proceedings of the VLDB Endowment
On predictive modeling for optimizing transaction execution in parallel OLTP systems
Proceedings of the VLDB Endowment
Facing peak loads in a P2P transaction system
Proceedings of the First Workshop on P2P and Dependability
Calvin: fast distributed transactions for partitioned database systems
SIGMOD '12 Proceedings of the 2012 ACM SIGMOD International Conference on Management of Data
Skew-aware automatic database partitioning in shared-nothing, parallel OLTP systems
SIGMOD '12 Proceedings of the 2012 ACM SIGMOD International Conference on Management of Data
Granola: low-overhead distributed transaction coordination
USENIX ATC'12 Proceedings of the 2012 USENIX conference on Annual Technical Conference
Proceedings of the VLDB Endowment
Chronos: predictable low latency for data center applications
Proceedings of the Third ACM Symposium on Cloud Computing
Lightweight locking for main memory database systems
Proceedings of the VLDB Endowment
SWORD: scalable workload-aware data placement for transactional workloads
Proceedings of the 16th International Conference on Extending Database Technology
Scalable and dynamically balanced shared-everything OLTP with physiological partitioning
The VLDB Journal — The International Journal on Very Large Data Bases
On the necessity of model checking NoSQL database schemas when building SaaS applications
Proceedings of the 2013 International Workshop on Testing the Cloud
Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles
ACM SIGOPS 24th Symposium on Operating Systems Principles
Speedy transactions in multicore in-memory databases
Proceedings of the Twenty-Fourth ACM 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
bCATE: a balanced contention-aware transaction execution model for highly concurrent OLTP systems
WAIM'13 Proceedings of the 14th international conference on Web-Age Information Management
Eliminating unscalable communication in transaction processing
The VLDB Journal — The International Journal on Very Large Data Bases
Hi-index | 0.00 |
Database partitioning is a technique for improving the performance of distributed OLTP databases, since "single partition" transactions that access data on one partition do not need coordination with other partitions. For workloads that are amenable to partitioning, some argue that transactions should be executed serially on each partition without any concurrency at all. This strategy makes sense for a main memory database where there are no disk or user stalls, since the CPU can be fully utilized and the overhead of traditional concurrency control, such as two-phase locking, can be avoided. Unfortunately, many OLTP applications have some transactions which access multiple partitions. This introduces network stalls in order to coordinate distributed transactions, which will limit the performance of a database that does not allow concurrency. In this paper, we compare two low overhead concurrency control schemes that allow partitions to work on other transactions during network stalls, yet have little cost in the common case when concurrency is not needed. The first is a light-weight locking scheme, and the second is an even lighter-weight type of speculative concurrency control that avoids the overhead of tracking reads and writes, but sometimes performs work that eventually must be undone. We quantify the range of workloads over which each technique is beneficial, showing that speculative concurrency control generally outperforms locking as long as there are few aborts or few distributed transactions that involve multiple rounds of communication. On a modified TPC-C benchmark, speculative concurrency control can improve throughput relative to the other schemes by up to a factor of two.