2021 — M2 Internship: Study and performance benchmarking of Collaborative Edge systems
Large-scale web applications today are built on top of high-performance
Cloud servers hosting a distributed database. Geo-replication in Cloud
datacenters is used to avoid network latency and provide fast response
time. Nevertheless, the closest DC is often still too far away for an
optimal user experience. To remain available at all times, client-side
applications need to cache data at client machines, caching data at
client machines can improve availability and latency for many
applications, and also allow for temporary disconnection. This approach
is used in many recent cloud services, like Google Drive RT API or
Facebook News Feed, where developers implement caching and buffering at
application level, but it doesn’t ensure system-wide consistency
Many prior work efforts have studied data management in settings where
clients are intermittently connected to servers or to peers. Bayou 
pushed data replicas to the edge in the context of mobile environments,
then Cimbiosys  extended the decentralized synchronization model to
Internet Services, in addition to Rover and Coda , those systems
supports disconnected operations but rely on a weak consistency model.
Recently, Edge systems focuses around the direct interactions among web
application users. Parse , YJS and Cloud Types  are programming
models for shared cloud data, they allow local data copies to be stored
on the edge client and later be synced with the cloud, but provides only
an eventual consistency model. To guarantee that all replicas converge
to the same state despite concurrent updates SwiftCloud , Collab,
Legion  and Automerge  relies on Conflict-free Replicated Data
Types (CRDTs) .
To address those issues, our team developed Antidote and
EdgeAnt. Antidote is a data store that provides an adequate consistency
semantics with optimal performance by minimizing the need for
synchronization between storage replicas. It offers a causally
consistent transactional API and a toolkit of convergent data types that
accommodates the typical needs of distributed applications. EdgeAnt
extends Antidote with a consistent, mutable cache on the Edge device,
with the same API and consistency guarantees. With support for client
migration, P2P group communication and load placement at the edge or at
Research objectives and methods
The aim of this project is to do a state of the art study of a five selected Edge-collaborative systems, in terms of features, implementation and standard performance benchmarking. We break down the project into the following steps:
- Brief research and implementation study of the state of the art
- Adaptating an existing real-world collaborative benchmark application to the API of
- Benchmark the five systems on a geo-replicated infrastructure (G5000
- Interesting results can lead to a research publication.
How to apply
The intern must:
- Be enrolled in Computer Science / Informatics or a related field.
- Have an excellent academic record.
- Be strongly interested in, and have good knowledge of, distributed systems and
- Be motivated by experimental research.
The internship is funded, and will take place in the Delys group, at Laboratoire d’Informatique de Paris-6 (LIP6), in Paris. It will be advised by Ilyas Toumlilt and supervised by Dr. Marc Shapiro. A successful intern will be invited to apply for a PhD.
To apply, contact Ilyas Toumlilt email@example.com with the following information:
- A resume or Curriculum Vitæ.
- A list of courses and grades of the last two years of study (an informal transcript is
- Names and contact details of two references (people who can recommend you),
whom we will contact directly.
 AntidoteDB. http://syncfree.github.io/antidote/.
 D. Terry. “Replicated Data Consistency Explained Through Baseball” Communications of the ACM Vol. 56 N. 12, 2013. https://cacm.acm.org/magazines/2013/12/169945-replicated-data-consistency-explained-through-baseball/
 M. Shapiro, N. Preguiça, C. Baquero, and M. Zawirski. Conflict-free replicated data types. In Int. Symp. on Stabilization, Safety, and Security of Distributed Systems (SSS),
 D. D. Akkoorath, A. Z. Tomsic, M. Bravo, Z. Li, T. Crain, A. Bieniusa, N. Preguiça, and M. Shapiro.
“Cure: Strong semantics meets high availability and low latency.” In Int. Conf. on Distributed Comp. Sys. (ICDCS),
 A. van der Linde, P. Fouto, J. Leitão, N. Preguiça, S. Castiñeira and A. Bieniusa. Legion: Enriching Internet Services with Peer-to-Peer Interactions, Proceedings of the 26th International Conference on World Wide Web, WWW 2017, Perth, Australia, April 3-7, 2017. http://dx.doi.org/10.1145/3038912.3052673
M. Zawirski, N. Preguiça, S. Duarte, A. Bieniusa, V. Balegas, M. Shapiro.
“Write Fast, Read in the Past: Causal Consistency for Client-side Applications.”
ACM/IFIP/USENIX Middleware conference, Dec. 2015.
Vancouver, BC, Canada.
 Kleppmann, Martin, and Alastair R. Beresford. “Automerge: Realtime data sync between edge devices.” 1st UK Mobile, Wearable and Ubiquitous Systems Research Symposium (MobiUK 2018). https://mobiuk.org/abstract/S4-P5-Kleppmann-Automerge. pdf. 2018.