Logo do repositório
 
A carregar...
Miniatura
Publicação

Replication Support for Local-First Collaborative Applications

Utilize este identificador para referenciar este registo.
Nome:Descrição:Tamanho:Formato: 
Silva_2024.pdf2.77 MBAdobe PDF Ver/Abrir

Orientador(es)

Resumo(s)

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.
A transferência generalizada de serviços/aplicações para a cloud conduziu a uma perda significativa da verdadeira propriedade dos dados para os utilizadores. Com aplicações acessíveis apenas através de serviços em cloud, os utilizadores tornaram-se completamente dependentes da nuvem para acederem e gerirem os seus dados, levantando preocupações sobre segurança, privacidade e acessibilidade a longo prazo. O software local-first resolve os problemas das aplicações em nuvem permitindo a execução local, dando aos utilizadores controlo sobre os seus dados sem depender de servidores externos. No entanto, introduz desafios na manutenção da consistência em aplicações colaborativas, especialmente quando os utilizadores trabalham offline. Adicio- nalmente, a maioria dos algoritmos de replicação tratam todos os dados uniformemente, levando a ineficiências e falsas dependências, como a priorização da propagação da posição do cursor de outro usuário sobre o estado do documento em edição colaborativa. Nesta dissertação, propomos, desenhamos e implementamos um protótipo de solução que atende aos diversos requisitos de replicação em aplicações colaborativas. O algoritmo proposto suporta replicação com diferentes prioridades e usa Consistência Causal em Camadas, garantindo que operações com alta prioridade têm precedência na fila de repli- cação e não dependem de operações de menor prioridade. Realizamos várias experiências em diferentes configurações do sistema para analisar o desempenho e a escalabilidade da solução.

Descrição

Palavras-chave

Distributed Systems Local-first software Replication with Priorities Layered Causal Consistency

Contexto Educativo

Citação

Projetos de investigação

Unidades organizacionais

Fascículo

Editora

Licença CC