Abstract
Distributed Shared Storage Services may serve as building blocks to yield complex, decentralized, cloud applications in emerging technologies (e.g., IoT, VR/AR), as they offer a transparent cloud storage space where distributed applications can store, retrieve, and coordinate over shared data. Ideally, distributed applications would like to communicate through a “cloud” memory layer that may provide similar guarantees as a centralized sequential memory. Atomic Distributed Shared Memory (ADSM) provides the illusion of a sequential memory space despite asynchrony, network perturbations, and device failures. A plethora of algorithmic solutions along with proven correctness guarantees have been proposed to provide ADSM in a message passing system. None of them, however, has been adopted in a real working solution: commercial solutions avoid the use of ADSM algorithms, mainly due to their communication overhead. But what is exactly the performance overhead of an ADSM algorithm over existing commercial solutions? In this work we want to provide a first answer to this question by performing an in-depth experimental comparison of the state-of-the-art dynamic ADSM algorithm ARES, with two well-established open-source distributed storage solutions, Cassandra and Redis. The results show that ARES’s performance is comparable with the commercial systems, with respect to scalability, object size and throughput.
Supported by the EU’s NGIAtlantic.eu cascading grant agreement no. OC4-347; https://projects.algolysis.com/ares-ngi/.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Cassandra. https://cassandra.apache.org/_/index.html
Redis. https://redis.io
Data repository. https://github.com/nicolaoun/ngiatlantic-public-data
Aguilera, M.K., Keidar, I., Malkhi, D., Shraer, A.: Dynamic atomic storage without consensus. J. ACM 58(2), 7:1–7:32 (2011)
Attiya, H.: Robust simulation of shared memory: 20 years after. Bull. EATCS 100, 99–114 (2010)
Attiya, H., Bar-Noy, A., Dolev, D.: Sharing memory robustly in message-passing systems. J. ACM 42(1), 124–142 (1995)
CloudlabUtah. Cloudlab Utah. https://www.cloudlab.us
Dutta, P., Guerraoui, R., Levy, R., Chakraborty, A.: How fast can a distributed atomic read be? In: Proceedings of PODC, pp. 236–245 (2004)
Georgiou, C., Nicolaou, N., Shvartsman, A.: Fault-tolerant semifast implementations of atomic read/write registers. JPDC 69(1), 62–79 (2009)
Georgiou, C., Hadjistasi, T., Nicolaou, N., Schwarzmann, A.A.: Implementing three exchange read operations for distributed atomic storage. JPDC 163, 97–113 (2022)
Georgiou, C., Nicolaou, N., Trigeorgi, A.: Fragmented ARES: dynamic storage for large objects. In: Proceedings of DISC (2022, To appear). arXiv:2201.13292
Gilbert, S., Lynch, N.A., Shvartsman, A.A.: RAMBO: a robust, reconfigurable atomic memory service for dynamic networks. Dist. Comp. 23(4), 225–272 (2010)
Gramoli, V., Nicolaou, N., Schwarzmann, A.A.: Consistent Distributed Storage. Synthesis Lectures on DC Theory. Morgan & Claypool Publishers, San Rafael (2021)
GRID5000. https://www.grid5000.fr/w/Grid5000:Home
Herlihy, M., Wing, J.: Linearizability: a correctness condition for concurrent objects. ACM TOPLAS 12(3), 463–492 (1990)
Lamport, L.: On interprocess communication, parts I and II. Distrib. Comput. 1(2), 77–101 (1986)
Lynch, N., Shvartsman, A.: Robust emulation of shared memory using dynamic quorum-acknowledged broadcasts. In: Proceedings of FTCS, pp. 272–281 (1997)
Nicolaou, N., et al.: ARES: adaptive, reconfigurable, erasure coded, atomic storage. ACM Trans. Storage (TOS) (2022, To appear). arXiv:1805.03727
Ongaro, D., Ousterhout, J.: In search of an understandable consensus algorithm. In: Proceedings of USENIX ATC, pp. 305–320 (2014)
PyEClib. https://github.com/openstack/pyeclib
PySyncObj. https://github.com/bakwc/PySyncObj
Reed, I.S., Solomon, G.: Polynomial codes over certain finite fields. J. Soc. Ind. Appl. Math. 8, 300–304 (1960)
VirtualWall. https://doc.ilabt.imec.be/ilabt/virtualwall/
ZeroMQ. https://zeromq.org
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Trigeorgi, A. et al. (2022). Invited Paper: Towards Practical Atomic Distributed Shared Memory: An Experimental Evaluation. In: Devismes, S., Petit, F., Altisen, K., Di Luna, G.A., Fernandez Anta, A. (eds) Stabilization, Safety, and Security of Distributed Systems. SSS 2022. Lecture Notes in Computer Science, vol 13751. Springer, Cham. https://doi.org/10.1007/978-3-031-21017-4_3
Download citation
DOI: https://doi.org/10.1007/978-3-031-21017-4_3
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-21016-7
Online ISBN: 978-3-031-21017-4
eBook Packages: Computer ScienceComputer Science (R0)