SCert: Speculative certification in replicated software transactional memories
Proceedings of the 4th Annual International Conference on Systems and Storage
PolyCert: polymorphic self-optimizing replication for in-memory transactional grids
Middleware'11 Proceedings of the 12th ACM/IFIP/USENIX international conference on Middleware
The potential dangers of causal consistency and an explicit solution
Proceedings of the Third ACM Symposium on Cloud Computing
PolyCert: polymorphic self-optimizing replication for in-memory transactional grids
Proceedings of the 12th International Middleware Conference
SCORe: a scalable one-copy serializable partial replication protocol
Proceedings of the 13th International Middleware Conference
MoSQL: an elastic storage engine for MySQL
Proceedings of the 28th Annual ACM Symposium on Applied Computing
Hyflow2: a high performance distributed transactional memory framework in scala
Proceedings of the 2013 International Conference on Principles and Practices of Programming on the Java Platform: Virtual Machines, Languages, and Tools
On the scalability of snapshot isolation
Euro-Par'13 Proceedings of the 19th international conference on Parallel Processing
Hi-index | 0.00 |
Partial replication is a way to increase the scalability of replicated systems: updates only need to be applied to a subset of the system's sites, thus allowing replicas to handle independent parts of the workload in parallel. In this paper, we propose P-Store, a partially replicated key-value store for wide area networks. In P-Store, each transaction T optimistically executes on one or more sites and is then certified to guarantee serializability of the execution. The certification protocol is genuine, it only involves sites that replicate data items read or written by T, and incorporates a mechanism to minimize a convoy effect. P-Store makes a thrifty use of an atomic multicast service to guarantee correctness: no messages need to be multicast during T's execution and a single message is multicast to certify T. In case T is global, that is, T's execution is distributed at different geographical locations, an extra vote phase is required. Our approach may offer better scalability than previously proposed solutions that either require multiple atomic multicast messages to execute T or are non-genuine. Experimental evaluations reveal that the convoy effect plays an important role even when one percent of the transactions are global. We also compare the scalability of our approach to a fully replicated solution when the proportion of global transactions and the number of sites vary.