Publicação

Replication Support for Local-First Collaborative Applications

Ver documento

Detalhes bibliográficos
Resumo:The widespread shift of services/applications to the cloud has led to a significant loss of true data ownership for users. With applications only accessible through cloud services, users have become completely dependent on the cloud to access and manage their data, raising concerns about security, privacy, and long-term accessibility. Local-first software addresses issues in cloud applications by enabling local execution, giving users control over their data without relying on external servers. However, it introduces challenges in maintaining consistency in collaborative applications, especially when users work offline. Additionally, most replication algorithms treat all data uniformly, leading to inefficiencies and false dependencies, such as prioritizing propagating other user’s cursor position over the document’s state in collaborative editing. In this dissertation, we propose, design, and implement a prototype solution that caters to the diverse replication requirements within collaborative applications. The proposed algorithm supports replication with different priorities and uses Layered Causal Consistency, ensuring that operations with high-priority take precedence in the replication queue and don’t depend on lower priority operations. We conduct various experiments in different system settings to analyse the performance and scalability of the solution.
Autores principais:Silva, Bernardo dos Santos
Assunto:Distributed Systems Local-first software Replication with Priorities Layered Causal Consistency
Ano:2024
País:Portugal
Tipo de documento:dissertação de mestrado
Tipo de acesso:acesso aberto
Instituição associada:Universidade Nova de Lisboa
Idioma:inglês
Origem:Repositório Institucional da UNL
Descrição
Resumo:The widespread shift of services/applications to the cloud has led to a significant loss of true data ownership for users. With applications only accessible through cloud services, users have become completely dependent on the cloud to access and manage their data, raising concerns about security, privacy, and long-term accessibility. Local-first software addresses issues in cloud applications by enabling local execution, giving users control over their data without relying on external servers. However, it introduces challenges in maintaining consistency in collaborative applications, especially when users work offline. Additionally, most replication algorithms treat all data uniformly, leading to inefficiencies and false dependencies, such as prioritizing propagating other user’s cursor position over the document’s state in collaborative editing. In this dissertation, we propose, design, and implement a prototype solution that caters to the diverse replication requirements within collaborative applications. The proposed algorithm supports replication with different priorities and uses Layered Causal Consistency, ensuring that operations with high-priority take precedence in the replication queue and don’t depend on lower priority operations. We conduct various experiments in different system settings to analyse the performance and scalability of the solution.