Optimistische Datenreplikation mit CRDTs im C++ ActorFramework

URL
Dokumentart: Bachelor Thesis
Institut: Department Informatik
Sprache: Deutsch
Erstellungsjahr: 2017
Publikationsdatum:
SWD-Schlagwörter: Datenreplikation
Freie Schlagwörter (Deutsch): Conflict-free Replicated Datatypes (CRDTs), Datenreplikation, CAP-Theorem, Konsistenzmodelle, Aktoren, Verteilte Systeme, Logische Uhren
Freie Schlagwörter (Englisch): Conflict-free Replicated Datatypes (CRDTs), Data Replication, CAP-Theorem, Consistency Models, Actors, Distributed Systems, Logical Clocks
DDC-Sachgruppe: Informatik

Kurzfassung auf Deutsch:

Das Aktormodell beschreibt isolierte, nebenläufige Entitäten, die mit transparenter Nachrichtenübermittlung kommunizieren. Es erlaubt, lokale, nebenläufige Kerne auszunutzen sowie skalierbare verteilte Systeme zu implementieren. Diese Bachelorarbeit vereint konfliktfrei replizierbare Datensturkturen, sogenannte „Conflict-free Replicated Datatypes“ (CRDTs), mit einem Aktor-Programmierkonzept. CRDTs können nebenläufig und unabhängig voneinander geändert werden, ohne dass eine Zugriffskoordination benötigt wird. In dieser Arbeit wird ein Modul für das C++ Actor Framework (CAF) zur Replikation von Daten mit Hilfe von CRDTs entworfen und implementiert. Hierfür wurde zwischen verschiedenen Zugriffskonzepten auf Replikate abgewogen. Außerdem wurden verschiedene Klassen von CRDTs gegenübergestellt. Weiterhin wurde ein Verfahren für die Verteilung von CRDTs im verteilten System entworfen, welches Konvergenz der Replikate zusichert. Der entstandene Entwurf wurde implementiert und schließlich evaluiert. Hierbei wurden insbesondere Kriterien wie vorhersagbare Konvergenzgeschwindigkeit sowie Datenaufkommen im Netzwerk berücksichtigt.

Kurzfassung auf Englisch:

The actor model describes isolated concurrent entities that communicate with transparent message passing. It allows local concurrent cores to be utilized as well as to implement scalable distributed systems. This thesis combines conflict-free replicated datatypes (CRDTs) with an actor programming concept. CRDTs can be changed concurrently and independently, without the need for access coordination. In this work, a module for the C ++ Actor Framework (CAF) is designed and implemented for the replication of data using CRDTs. For this purpose, different access concepts on replicas where compared. In addition, different classes of CRDTs were compared. Further, a method for the distribution of CRDTs in distributed systems has been designed which ensures convergence of replicas. The resulting design was implemented and finally evaluated. In particular, criterions such as predictable convergence speed as well as data volumes in the network were taken into account.

Hinweis zum Urheberrecht

Für Dokumente, die in elektronischer Form über Datenenetze angeboten werden, gilt uneingeschränkt das Urheberrechtsgesetz (UrhG). Insbesondere gilt:

Einzelne Vervielfältigungen, z.B. Kopien und Ausdrucke, dürfen nur zum privaten und sonstigen eigenen Gebrauch angefertigt werden (Paragraph 53 Urheberrecht). Die Herstellung und Verbreitung von weiteren Reproduktionen ist nur mit ausdrücklicher Genehmigung des Urhebers gestattet.

Der Benutzer ist für die Einhaltung der Rechtsvorschriften selbst verantwortlich und kann bei Mißbrauch haftbar gemacht werden.