Real-time collaborative editing using CRDTs

Real-time collaborative editors such as Google Docs allow users to edit a shared document simultaneously and see each others changes in real-time. This thesis investigates how conflict-free replicated data types (CRDTs) can be used to implement a general purpose data store that supports real-time co...

Full description

Bibliographic Details
Main Author: Ivarsson, Jakob
Format: Others
Language:English
Published: KTH, Skolan för elektroteknik och datavetenskap (EECS) 2019
Subjects:
Online Access:http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-249545
id ndltd-UPSALLA1-oai-DiVA.org-kth-249545
record_format oai_dc
spelling ndltd-UPSALLA1-oai-DiVA.org-kth-2495452019-05-01T05:14:14ZReal-time collaborative editing using CRDTsengIvarsson, JakobKTH, Skolan för elektroteknik och datavetenskap (EECS)2019Computer and Information SciencesData- och informationsvetenskapReal-time collaborative editors such as Google Docs allow users to edit a shared document simultaneously and see each others changes in real-time. This thesis investigates how conflict-free replicated data types (CRDTs) can be used to implement a general purpose data store that supports real-time collaborative editing of semi-structured data. The purpose of the data store is that it can be used by application developers to easily add collaborative behaviour to any application.  The performance of the implemented data store is evaluated and the results show that using CRDTs comes with a performance and memory penalty. However, replication over the internet is very efficient and concurrent updates is handled in a predictable way in most cases. Kollaborativa realtidseditorer som Google Docs låter användare editera ett gemensamt dokument samtidigt och se varandras ändringar i realtid. Den här rapporten undersöker hur konfliktfria replikerade datastrukturer (CRDTs) kan användas för att implementera en generell databas som hanterar kollaborativ realtidseditering. Syftet med databasen är att den kan användas av applikationsutvecklare för att enkelt kunna lägga till kollaborativt beteende till applikationer. Prestandan av den implementerade databasen utvärderas och resultaten visar att användningen av CRDTs resulterar i en ökad minnesanvändning och sämre prestanda. Att replikera databasen är väldigt effektivt och den hanterar konflikter på ett förutsägbart sätt. Student thesisinfo:eu-repo/semantics/bachelorThesistexthttp://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-249545TRITA-EECS-EX ; 2019:28application/pdfinfo:eu-repo/semantics/openAccess
collection NDLTD
language English
format Others
sources NDLTD
topic Computer and Information Sciences
Data- och informationsvetenskap
spellingShingle Computer and Information Sciences
Data- och informationsvetenskap
Ivarsson, Jakob
Real-time collaborative editing using CRDTs
description Real-time collaborative editors such as Google Docs allow users to edit a shared document simultaneously and see each others changes in real-time. This thesis investigates how conflict-free replicated data types (CRDTs) can be used to implement a general purpose data store that supports real-time collaborative editing of semi-structured data. The purpose of the data store is that it can be used by application developers to easily add collaborative behaviour to any application.  The performance of the implemented data store is evaluated and the results show that using CRDTs comes with a performance and memory penalty. However, replication over the internet is very efficient and concurrent updates is handled in a predictable way in most cases. === Kollaborativa realtidseditorer som Google Docs låter användare editera ett gemensamt dokument samtidigt och se varandras ändringar i realtid. Den här rapporten undersöker hur konfliktfria replikerade datastrukturer (CRDTs) kan användas för att implementera en generell databas som hanterar kollaborativ realtidseditering. Syftet med databasen är att den kan användas av applikationsutvecklare för att enkelt kunna lägga till kollaborativt beteende till applikationer. Prestandan av den implementerade databasen utvärderas och resultaten visar att användningen av CRDTs resulterar i en ökad minnesanvändning och sämre prestanda. Att replikera databasen är väldigt effektivt och den hanterar konflikter på ett förutsägbart sätt.
author Ivarsson, Jakob
author_facet Ivarsson, Jakob
author_sort Ivarsson, Jakob
title Real-time collaborative editing using CRDTs
title_short Real-time collaborative editing using CRDTs
title_full Real-time collaborative editing using CRDTs
title_fullStr Real-time collaborative editing using CRDTs
title_full_unstemmed Real-time collaborative editing using CRDTs
title_sort real-time collaborative editing using crdts
publisher KTH, Skolan för elektroteknik och datavetenskap (EECS)
publishDate 2019
url http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-249545
work_keys_str_mv AT ivarssonjakob realtimecollaborativeeditingusingcrdts
_version_ 1719021959058030592