ARES: Adaptive, Reconfigurable, Erasure coded, atomic Storage
Atomicity or strong consistency is one of the fundamental, most intuitive, and hardest to provide primitives in distributed shared memory emulations. To ensure survivability, scalability, and availability of a storage service in the presence of failures, traditional approaches for atomic memory emulation, in message passing environments, replicate the objects across multiple servers. Compared to replication based algorithms, erasure code-based atomic memory algorithms has much lower storage and communication costs, but usually, they are harder to design. The difficulty of designing atomic memory algorithms further grows, when the set of servers may be changed to ensure survivability of the service over software and hardware upgrades, while avoiding service interruptions. Atomic memory algorithms for performing server reconfiguration, in the replicated systems, are very few, complex, and are still part of an active area of research; reconfigurations of erasure-code based algorithms are non-existent. In this work, we present ARES, an algorithmic framework that allows reconfiguration of the underlying servers, and is particularly suitable for erasure-code based algorithms emulating atomic objects. ARES introduces new configurations while keeping the service available. To use with ARES we also propose a new, and to our knowledge, the first two-round erasure code based algorithm TREAS, for emulating multi-writer, multi-reader (MWMR) atomic objects in asynchronous, message-passing environments, with near-optimal communication and storage costs. Our algorithms can tolerate crash failures of any client and some fraction of servers, and yet, guarantee safety and liveness property. Moreover, by bringing together the advantages of ARES and TREAS, we propose an optimized algorithm where new configurations can be installed without the objects values passing through the reconfiguration clients.
💡 Research Summary
The paper addresses the long‑standing challenge of providing strongly consistent (atomic/linearizable) read‑write storage in asynchronous message‑passing systems while also supporting dynamic reconfiguration of the storage servers. Traditional replication‑based atomic storage algorithms (e.g., ABD, RAMBO, DynaStore) guarantee consistency but incur high storage overhead (full replication) and communication cost, and the few that support reconfiguration are limited to replication. Erasure‑code based storage dramatically reduces storage and bandwidth, yet existing erasure‑coded atomic algorithms are static: they assume a fixed set of servers and a fixed coding parameter (n, k). Consequently, no prior work has offered a reconfigurable, erasure‑coded atomic storage solution.
The authors introduce ARES (Adaptive, Reconfigurable, Erasure‑coded, Atomic Storage), a modular framework that separates the notion of a configuration from the underlying coding scheme. A configuration includes (i) the set of servers, (ii) a quorum system (any two quorums intersect), (iii) a consensus instance used to agree on the next configuration, and (iv) a collection of Data‑Access Primitives (DAPs). DAPs are low‑level operations (read‑fragment, write‑fragment, etc.) that can be implemented differently for each configuration, allowing arbitrary erasure‑code parameters, quorum sizes, and concurrency limits (δ). By treating DAPs as a black box, ARES can transfer the object’s state from an old configuration to a new one without exposing the value to clients, and can invoke reads and writes on a single configuration.
To instantiate the DAPs, the paper presents TREAS, a two‑round MWMR erasure‑coded algorithm. TREAS uses an
Comments & Academic Discussion
Loading comments...
Leave a Comment