Show simple item record

dc.contributor.advisorYu, Weihai
dc.contributor.authorTomter, Iver Toft
dc.date.accessioned2021-09-02T10:16:01Z
dc.date.available2021-09-02T10:16:01Z
dc.date.issued2021-05-31
dc.description.abstractThis project aims to explore creating a relational database of Conflict-Free Replicated Relations (CRR) that is generally applicable for most user applications. We aim to achieve generality by using SQLite because it is a commonly used embedded Database Management System that comes default in all Android or iOS devices. The implementation challenge is making CRR using only SQL. We propose a two-layer database design using Causal Lenght-set for rows in the relations and Last Write Wins-registers for attributes in the rows. Achieving this means implementing methods to propagate data between layers, storing necessary metadata that automatically upholds CRDT functionality. Merges are performed entirely in SQLite. CL-set functionality decides the state of each row, and LWW-registers determine the values of each attribute. In merges, the SQL script resolves reference integrity constraints. We base experiments on data and client-centric consistency and availability as latency. The experiments highlight the strong eventual consistency across two merge methods. Full merges are when the entire system merges periodically, which grants the system complete consistency on demand. Partial merges simulate that even though nodes are not always available, the system can uphold a consistency threshold. Availability is a trade-off compared to a local datastore when measured as transaction latency. However, the system's scalability outperforms other fairer comparisons like Paxos and Raft.en_US
dc.identifier.urihttps://hdl.handle.net/10037/22344
dc.language.isoengen_US
dc.publisherUiT Norges arktiske universiteten_US
dc.publisherUiT The Arctic University of Norwayen_US
dc.rights.accessRightsopenAccessen_US
dc.rights.holderCopyright 2021 The Author(s)
dc.rights.urihttps://creativecommons.org/licenses/by-nc-sa/4.0en_US
dc.rightsAttribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)en_US
dc.subject.courseIDINF-3981
dc.subjectVDP::Teknologi: 500::Informasjons- og kommunikasjonsteknologi: 550::Datateknologi: 551en_US
dc.subjectVDP::Technology: 500::Information and communication technology: 550::Computer technology: 551en_US
dc.subjectVDP::Matematikk og Naturvitenskap: 400::Informasjons- og kommunikasjonsvitenskap: 420::Databaser og multimediasystemer: 428en_US
dc.subjectVDP::Mathematics and natural science: 400::Information and communication science: 420::Databases and multimedia systems: 428en_US
dc.subjectVDP::Matematikk og Naturvitenskap: 400::Informasjons- og kommunikasjonsvitenskap: 420::Kommunikasjon og distribuerte systemer: 423en_US
dc.subjectVDP::Mathematics and natural science: 400::Information and communication science: 420::Communication and distributed systems: 423en_US
dc.subjectVDP::Matematikk og Naturvitenskap: 400::Informasjons- og kommunikasjonsvitenskap: 420::Teoretisk databehandling, programmeringsspråk og -teori: 421en_US
dc.subjectVDP::Mathematics and natural science: 400::Information and communication science: 420::Theoretical computer science, programming languages and programming theory: 421en_US
dc.titleTowards a General Database Management System of Conflict-Free Replicated Relationsen_US
dc.typeMaster thesisen_US
dc.typeMastergradsoppgaveen_US


File(s) in this item

Thumbnail
Thumbnail
Thumbnail

This item appears in the following collection(s)

Show simple item record

Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)
Except where otherwise noted, this item's license is described as Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)