Project Coordinator (EU) :
Algolysis LtdCountry of the EU Coordinator :
CyprusOrganisation Type :
SMEProject participants :
Algolysis LTD
Dr. Nicolas Nicolaou is the co-founder and a senior scientist and algorithms engineer at Algolysis. Dr. Nicolaou will participate in the project utilizing his long expertise on the formalization and analysis of Distributed Algorithms for Atomic R/W Storage Systems.
Dr. Efstathios Stavrakis [Algolysis LTD] is a co-founder and a senior scientist and algorithms engineer at Algolysis Ltd and has been conducting research in academia and the industry for 15 years. His research is in the areas of computer graphics, animation, virtual reality and games.
Dr. Theophanis Hadjistasi [Algolysis LTD] is conducting research in Fault-tolerant Parallel and Distributed Computing, with emphasis on Distributed Atomic Storage Implementations. His research interests span “Theory” and “Practice” with a focus on Algorithms and Complexity.
Ms Andria Trigeorgi [Algolysis LTD], PhD candidate in Computer Science at the University of Cyprus and researcher at Algolysis since the beginning of the project.
Penn State University
Dr. Viveck Cadambe [PSU], is an expert on distributed algorithms and erasure coding, and has previously participated in development of linearizable shared memory emulation algorithms via erasure coding, as well as provably consistent non-blocking reconfigurable algorithms.
Dr. Bhuvan Urgaonkar [PSU], brings expertise in systems software, distributed computing, and performance modeling. He has made contributions to resource management in clouds, power/cost management of DCs and storage systems.
Starting date :
ARES: A Next-Generation, Erasure Coded, Shared Distributed Storage System Experiment
Experiment description
Distributed Storage Systems (DSS) store large amounts of data in an affordable manner. Cloud vendors deploy hundreds to thousands of commodity machines, networked together to act as a single giant storage system. Yet, component failures, and network delays are the norm, thus ensuring consistent data-access and availability at the same time is a challenging task. Vendors often solve availability by replicating data across multiple servers. However, keeping these copies consistent, especially when they can be accessed concurrently by different operations, is very difficult and costly. The problem of keeping copies consistent becomes even more challenging when failed servers need to be replaced or new servers are added, without interrupting the service. Any type of service interruption in a heavily used DSS usually translates to immense revenue loss.
Commercial DSS avoid providing strong consistency guarantees as they are considered costly and difficult to implement in an asynchronous, fail prone, message passing environment. Indeed, initial implementations of Atomic DSS had high demands in communication, storage, and sometimes computation. Recent works however, investing in algorithms that may reduce the overheads on the aforementioned parameters. In particular, there exist algorithms that reduce the communication cost by trading (cheaper) computation resources, and other algorithms that use erasure coded techniques to reduce the communication overhead as well as the storage demands in the replica hosts, trading however the number of faults tolerated.
ARES goes one step further and attempts to harvest the efficiency of the proposed algorithms by incorporating an adaptive approach that allows algorithm switching based on the application needs. ARES offers strong consistency guarantees (atomicity), providing the illusion that data are accessed sequentially when in reality multiple processes may read and write the same data object concurrently. In addition, ARES provides the capability of dynamically changing the membership of the replica host, enabling the service to stay alive even in the presence of server failures or server replacement. Atomicity is the most intuitive semantic, which if implemented correctly and efficiently, may relief developers from a major headache of writing complex code or communication protocols and will provide a transparent shared memory service alleviating low level synchronization tasks for distributed applications. By utilizing communication lightweight algorithms via its adaptive nature, together with erasure coding techniques, ARES promises a communication and storage efficient service, which may attract the attention of potential stakeholders.
Successful completion of this project will provide clear indications for the possibility of deploying a global-scale shared memory (storage) space, introducing the new concept of Memory-as-a-Service (MaaS). This will open new horizons to the development of distributed, scalable, and high-performance applications, not just over dedicated hardware but also over commodity devices. It will also put the participating organizations, as well as Europe and the USA at the front of a new and innovative technology, open for further exploitation and commercialization. Our experiments may also expose weaknesses of the methodologies, leading the researchers to the drawing board for the identification of bottlenecks and the design of necessary optimizations.
Impacts :
Impact 1: Enhanced EU – US cooperation in Next Generation Internet, including policy cooperation.
The teams from the EU and US worked on the investigation of efficient tools that enable performant distributed applications in the next generation of internet. Our outcomes show that we do possess a promising technology that may complement existing solutions and may raise the need for the introduction of new standards in the era of distributed applications. The researchers at Penn State University (USA) collaborated closely with the Algolysis LTD (Cyprus, EU) team, to develop solutions that are being tested in a cross-Atlantic setup. This teamwork laid the foundation for the next generation international network protocols and further strengthened the relationships of EU and US partners towards future collaborations.
Impact 2: Reinforced collaboration and increased synergies between the Next Generation Internet and the Tomorrow's Internet programmes.
The US and EU teams collaboratively devised the scenarios that were executed in this project. Furthermore, ideas were exchanged during the analysis of the results and the identification of shortcomings and performance bottlenecks that provide space for further optimization. On this basis, the partners on this consortium will maintain a close collaboration beyond the end of this project, to enrich their knowledge and improve over the performance we achieved in
these experiments.
Furthermore, the two partners will seek new application domains for the developed technologies. The US partner has extensive experience in the design and evaluation of distributed algorithms and erasure coded storages. On the other hand, the EU partner has experience with devising state-of-the-art algorithmic solutions related to distributed systems, mobile & sensor networks, and VR/AR interactive experiences. We aspire to continue integrating and exchanging our knowledge after the end of this project and attempt to utilize the devised technology to the different domains of our expertise, reaching a demonstrator that will allow us to influence technology adoption and policy making.
Impact 3: Developing interoperable solutions and joint demonstrators, contributions to standards.
This collaboration between the EU and US partners yields an ADSS that operate across borders, demonstrating a new protocol for robust, and consistent data sharing. At its heart, ADSS algorithms (like ARES) promote interoperability, as they expose a simple application interface making them attractive for a large set of Cloud Applications and emerging technologies (i.e., IoT, VR, AR etc.). Our implementation and deployment of ARES is one of the few ADSS implementations that exist at the current stage. Our current deployment is the first practical implementation of a strongly consistent shared storage service to date. Results from our experiments may trigger the composition of new data sharing standards, across countries, applications, and digital assets.
Impact 4: An EU - US ecosystem of top researchers, hi-tech start-ups / SMEs and Internet-related communities collaborating on the evolution of the Internet
The collaboration with PSU is integral for Algolysis (an SME in the South-eastern Med area of the EU), allowing the company’s researchers to interact, collaborate, and exchange knowledge with top researchers and engineers in the field. This already provides a competitive advantage to the company and establishes strong collaborative bonds with researchers from one of the leading academic institutions in the world.
On the other hand, researchers in PSU had the chance to collaborate with members from a high-tech start-up in the EU which is mostly focused in the production of technologies to be used in the next generation of applications. Therefore they had the chance to experience the process that is followed to bring an idea coming from a basic research to a higher TRL.
Results :
Upon successful experimental evaluation, we expect the analytical results of ARES to match its theoretical findings, thus ARES being efficient and practically adoptable. In particular, we expect to meet the following Key Performance Indicators (KPI):
KPI# | Measure | Target |
---|---|---|
KPI-1 | Scalability 1: number of processes to access a single shared object concurrently |
Allow more than 250 (read/write) concurrent processes in the service |
KPI-2 | Scalability 2: examine performance of read/write operations when modifying the # of replica hosts |
Measure performance in seconds and expect linear increment as the # of replica hosts grows. |
KPI-3 | Stress-Test 1: number of read operations completed in a second (throughput) for objects under 1MB and under different concurrency and congestion loads |
Strict concurrency to affect negatively the performance of the algorithm while more stochastic (more realistic) loads will per form better. |
KPI-4 | Stress Test 2: time to take a read/write to complete under different object sizes |
Keep operations latency close to the expected delay of transferring an object of a predefined size over a dedicated connection bandwidth. |
KPI-5 | Fault Tolerance 1: time that takes for the service to reconfigure on replica failure or removal | Measured in seconds and targeted to be linear with respect to the number of concurrent reconfigurations. Service to experience no interruptions. |
KPI-6 | Performance Comparison 1: compare the algorithm performance with other ADSS | We expect that ARES may have additional performance overhead over simpler solutions that do not support dynamicity or use centralized control. |
The successful implementation of the proof of concept along with the experimental validation allowed this project to reach a Technology Readiness Level 4 (TRL4). Algolysis will now be able to take an informed and data-backed decision on whether the technology is technically feasible and engage in a longer-term targeted investment. In case the technical and market feasibility is viable, Algolysis will integrate the developed technology into the business strategy of the company and allocate resources for further development attempting to achieve a Technology Readiness Level 5-9 (TRL5-9).
Future Plan :
As a general finding, achieving strong consistency is more costly than providing weaker semantics as we experienced with Redis and Redis_W. However, the performance gap is not prohibitively large and future optimizations of ARES may close it enough so as to substantiate trading performance for consistency. Compared to the atomic version of Cassandra, ADSM algorithms seem to scale better, but lack behind in the throughput when dealing with small objects. Both approaches seem to be affected by the object size, but ARES_EC suggests that fragmentation may be the solution to this problem. Finally, we demonstrated that ARES may handle efficiently failures in the system, and reconfiguring from one DAP to another without service interruptions. Also, by examining the fragmentation parameter, we exposed trade-offs between operation latency and fault-tolerance in the system: the further increase of the parity (and thus higher fault-tolerance) the larger the latency.
ARES, an algorithm that always offers provable guarantees, competes closely and in many cases outperforms existing DSS solutions (even when offering weaker consistency guarantees). As a future work, it would be of utmost importance to study how optimizations may improve the performance of ARES. For example, improved fragmentation techniques may have a positive impact on the performance of the algorithm.
Key Results
- The successful implementation of the proof of concept along with the experimental validation allowed this project to reach a Technology Readiness Level 4 (TRL4)
- More detailed experiment results available on website.
- Accepted paper: Trigeorgi, Andria, Nicolas Nicolaou, Chryssis Georgiou, Theophanis Hadjistasi, Efstathios Stavrakis, Viveck Cadambe, and Bhuvan Urgaonkar. “Invited Paper: Towards Practical Atomic Distributed Shared Memory: An Experimental Evaluation.” In Stabilization, Safety, and Security of Distributed Systems, edited by Stéphane Devismes, Franck Petit, Karine Altisen, Giuseppe Antonio Di Luna, and Antonio Fernandez Anta, 35–50. Cham: Springer International Publishing, 2022.