Sincronização Eficiente de CRDTs em Escala utilizando VCube-PS - Galesky, Leonardo de Freitas (2023)
Distributed systems are used to build large-scale services on the Internet. In this context, models with looser consistency guarantees allow for optimizing the availability of these systems in the form of scalability, latency, and fault tolerance. However, using more relaxed rules introduces the possibility of conflicts that need to be arbitrated by the participants. To carry out this process in a decentralized way, protocols often use ad-hoc strategies such as LWW (Last Writer Wins) or even blocking the system until the inconsistent state is resolved manually. Conflict Free Replicated Data Types (CRDT) define data structures that meet mathematical specifications that guarantee that operations can be performed independently and concurrently without any form of coordination, allowing conflict resolution rules to be defined with greater granularity and adapting to the specification of the domain where they are applied. This study presents VCube-Sync, a system that uses a topology of virtual hypercubes for replicating a data store based on CRDT (Conflict-free Replicated Data Types). Hypercubes have been previously employed as a structured overlay network for message distribution due to fault tolerance and logarithmic latency, while also allowing the development of optimization heuristics based on knowledge of the overlay configuration. The replication protocol presented in this study was based on the VCube-PS exploiting synergies between publication-subscription and replication systems. The protocol was tested under various load and network distributions using the Grid5000 testbed, and the results were compared with other replication protocols from recent research. The results of this study show that VCube-Sync provides good results in terms of latency, scalability and network usage.