HackerPapers

arXiv:1608.03960cs.DC

A Conflict-Free Replicated JSON Datatype

Martin Kleppmann, Alastair R. Beresford

Abstract

Many applications model their data in a general-purpose storage format such as JSON. This data structure is modified by the application as a result of user input. Such modifications are well understood if performed sequentially on a single copy of the data, but if the data is replicated and modified concurrently on multiple devices, it is unclear what the semantics should be. In this paper we present an algorithm and formal semantics for a JSON data structure that automatically resolves concurrent modifications such that no updates are lost, and such that all replicas converge towards the same state (a conflict-free replicated datatype or CRDT). It supports arbitrarily nested list and map types, which can be modified by insertion, deletion and assignment. The algorithm performs all merging client-side and does not depend on ordering guarantees from the network, making it suitable for deployment on mobile devices with poor network connectivity, in peer-to-peer networks, and in messaging systems with end-to-end encryption.

arXiv comments
Journal reference
DOI
doi:10.1109/TPDS.2017.2697382
Subjects
cs.DCDistributed, Parallel, and Cluster Computing cs.DBDatabases

On Hacker News

Linked by 5 identifiable commenters in 5 comments across 5 threads, from Feb 2018 to Jul 2022. Found in 2 HN submissions from Aug 2016 to Aug 2016. Open submission discussions.

Comments linking this paper, per year.

Discussed in comments5 threads

    • Conflict-free replicated data type (CRDT) is super interesting data type (and algorithm), especially when it is implemented for complex data structures like JSON: A JSON CRDT is "[...] an algorithm and formal semantics for a JSON data structure that automatically resolves…

      gpestanaView on HNParent context

    • There's a whole community of folks on Matrix focused on experimenting with realtime document collaboration over Matrix - they hang out at #matrix-collaboration:kb1rd.net. It's pretty early days, but https://github.com/KB1RD/matrix-notepad is fun, and if coupled with some of the…

      ArathornView on HNParent context

    • He also published this awesome paper on CRDTs, "A Conflict-Free Replicated JSON Datatype". [0]: https://arxiv.org/abs/1608.03960

      kuwzeView on HNParent context

Submitted to Hacker News

Connected through shared HN threads, not inferred similarity or a recommendation.