TY - GEN
T1 - A practical distributed universal construction with unknown participants
AU - Sutra, Pierre
AU - Rivière, Étienne
AU - Felber, Pascal
N1 - Publisher Copyright:
© Springer International Publishing Switzerland 2014.
PY - 2014/1/1
Y1 - 2014/1/1
N2 - Modern distributed systems employ atomic read-modify-write primitives to coordinate concurrent operations. Such primitives are typically built on top of a central server, or rely on an agreement protocol. Both approaches provide a universal construction, that is, a general mechanism to construct atomic and responsive objects. These two techniques are however known to be inherently costly. As a consequence, they may result in bottlenecks in applications using them for coordination. In this paper, we investigate another direction to implement a universal construction. Our idea is to delegate the implementation of the universal construction to the clients, and solely implement a distributed shared atomic memory on the servers side. The construction we propose is obstruction-free. It can be implemented in a purely asynchronous manner, and it does not assume the knowledge of the participants. It is built on top of grafarius and racing objects, two novel shared abstractions that we introduce in detail. To assess the benefits of our approach,we present a prototype implementation on top of the Cassandra data store, and compare it empirically to the Zookeeper coordination service.
AB - Modern distributed systems employ atomic read-modify-write primitives to coordinate concurrent operations. Such primitives are typically built on top of a central server, or rely on an agreement protocol. Both approaches provide a universal construction, that is, a general mechanism to construct atomic and responsive objects. These two techniques are however known to be inherently costly. As a consequence, they may result in bottlenecks in applications using them for coordination. In this paper, we investigate another direction to implement a universal construction. Our idea is to delegate the implementation of the universal construction to the clients, and solely implement a distributed shared atomic memory on the servers side. The construction we propose is obstruction-free. It can be implemented in a purely asynchronous manner, and it does not assume the knowledge of the participants. It is built on top of grafarius and racing objects, two novel shared abstractions that we introduce in detail. To assess the benefits of our approach,we present a prototype implementation on top of the Cassandra data store, and compare it empirically to the Zookeeper coordination service.
UR - https://www.scopus.com/pages/publications/84917706330
U2 - 10.1007/978-3-319-14472-6_32
DO - 10.1007/978-3-319-14472-6_32
M3 - Conference contribution
AN - SCOPUS:84917706330
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 485
EP - 500
BT - Principles of Distributed Systems - 18th International Conference, OPODIS 2014, Proceedings
A2 - Aguilera, Marcos K.
A2 - Querzoni, Leonardo
A2 - Shapiro, Marc
PB - Springer Verlag
T2 - 18th International Conference on Principles of Distributed Systems, OPODIS 2014
Y2 - 16 December 2014 through 19 December 2014
ER -