Concurrency control and recovery in database systems
Concurrency control and recovery in database systems
Free transactions with Rio Vista
Proceedings of the sixteenth ACM symposium on Operating systems principles
Introduction to Algorithms
Don't Be Lazy, Be Consistent: Postgres-R, A New Way to Implement Database Replication
VLDB '00 Proceedings of the 26th International Conference on Very Large Data Bases
Cache-Conscious Concurrency Control of Main-Memory Indexes on Shared-Memory Multiprocessor Systems
Proceedings of the 27th International Conference on Very Large Data Bases
Scalable Replication in Database Clusters
DISC '00 Proceedings of the 14th International Conference on Distributed Computing
Pronto: A Fast Failover Protocol for Off-the-Shelf Commercial Databases
SRDS '00 Proceedings of the 19th IEEE Symposium on Reliable Distributed Systems
Ganymed: scalable replication for transactional web applications
Proceedings of the 5th ACM/IFIP/USENIX international conference on Middleware
Conflict-aware scheduling for dynamic content applications
USITS'03 Proceedings of the 4th conference on USENIX Symposium on Internet Technologies and Systems - Volume 4
Proceedings of the ACM/IFIP/USENIX 2003 International Conference on Middleware
RAIDb: redundant array of inexpensive databases
ISPA'04 Proceedings of the Second international conference on Parallel and Distributed Processing and Applications
Hi-index | 0.00 |
We scale the database back-end in dynamic content web servers on a set of database replicas while maintaining strong consistency. This is contrary to conventional wisdom in replicated databases which says that one could have either strong consistency or scalability, but not both.The key to scaling is a novel integrated fine-grained concurrency control and data replication algorithm called Dynamic Multiversioning that provides fine-grained distributed concurrency control at the level of a memory page across a database cluster. We exploit the different distributed data versions that naturally come about as a result of asynchronous data replication in order to increase concurrency by running conflicting transactions in parallel on different replicas.At the same time, the serialization order is determined using fine-grained concurrency control at a master database and enforced through a version-aware scheduling technique. Our technique does not put any crucial data in the scheduler, which permits easy reconfiguration, without loss of data, in the case of single-node failures of any node in the system.Our measurements show near-linear scaling up to 8 databases for the browsing, shopping and even for the write-heavy ordering workload of the industry-standard e-commerce TPC-W benchmark.