Eventually-serializable data services
PODC '96 Proceedings of the fifteenth annual ACM symposium on Principles of distributed computing
RAMBO: A Reconfigurable Atomic Memory Service for Dynamic Networks
DISC '02 Proceedings of the 16th International Conference on Distributed Computing
PVS: Combining Specification, Proof Checking, and Model Checking
CAV '96 Proceedings of the 8th International Conference on Computer Aided Verification
Software Architectural Specification for Optimal Object Distribution
SCCC '98 Proceedings of the XVIII International Conference of the Chilean Computer Science Society
Architectural specification and optimal deployment of distributed systems
Architectural specification and optimal deployment of distributed systems
FAB: building distributed enterprise disk arrays from commodity components
ASPLOS XI Proceedings of the 11th international conference on Architectural support for programming languages and operating systems
The Theory of Timed I/O Automata (Synthesis Lectures in Computer Science)
The Theory of Timed I/O Automata (Synthesis Lectures in Computer Science)
Tractable symmetry breaking for CSPs with interchangeable values
IJCAI'03 Proceedings of the 18th international joint conference on Artificial intelligence
Parallelizing constraint programs transparently
CP'07 Proceedings of the 13th international conference on Principles and practice of constraint programming
Bandwidth-Limited Optimal Deployment of Eventually-Serializable Data Services
CPAIOR '09 Proceedings of the 6th International Conference on Integration of AI and OR Techniques in Constraint Programming for Combinatorial Optimization Problems
A constraint programming approach for the service consolidation problem
CPAIOR'10 Proceedings of the 7th international conference on Integration of AI and OR Techniques in Constraint Programming for Combinatorial Optimization Problems
Hi-index | 0.00 |
Replication is a fundamental technique for increasing throughput and achieving fault tolerance in distributed data services. However, its implementation may induce significant communication costs to maintain consistency between the replicas. Eventually-Serializable Data Service (ESDS) has been proposed to reduce these costs and enable fast operations on data, while still providing guarantees that the replicated data will eventually be consistent. This paper reconsiders the deployment phase of ESDS, in which a particular implementation of communicating software components must be mapped onto a physical architecture. This deployment aims at minimizing the overall communication costs, while satisfying the constraints imposed by the protocol. Both MIP and CP models are presented and applied to realistic ESDS instances. The experimental results indicate that both models can find optimal solutions and prove optimality. The CP model, however, provides orders of magnitude improvements in efficiency. The limitations of the MIP model and the critical aspects of the CP model are discussed. Symmetry breaking and parallel computing are also shown to bring significant benefits.