Real Differences between OT and CRDT in Correctness and Complexity for Consistency Maintenance in Co-Editors

05/02/2019
by   David Sun, et al.
0

OT (Operational Transformation) was invented for supporting real-time co-editors in the late 1980s and has evolved to become a core technique used in today's working co-editors and adopted in major industrial products. CRDT (Commutative Replicated Data Type) for co-editors was first proposed around 2006, under the name of WOOT (WithOut Operational Transformation). Follow-up CRDT variations are commonly labeled as "post-OT" techniques and have made broad claims of superiority over OT solutions, in terms of correctness, time and space complexity, simplicity, etc. Over one decade later, however, OT remains the choice for building the vast majority of co-editors, whereas CRDT is rarely found in working co-editors. Why? Based on comprehensive review and comparison on representative OT and CRDT solutions and co-editors based on them, we present our discoveries in relation to this question and beyond in a series of three articles. In prior work, we have revealed that CRDT is like OT in following the same general transformation approach and CRDT is not natively commutative for concurrent operations in co-editors, which helps to clarify what CRDT really is and is not for co-editors. In this article, we reveal OT and CRDT differences in correctness and complexity by dissecting and examining representative OT and CRDT solutions. We explore how different basic approaches, i.e. the concurrency-centric approach taken by OT and the content-centric approach taken by CRDT, had resulted in different technical challenges, correctness and complexity issues, and solutions. Moreover, we reveal hidden algorithmic flaws with representative CRDT solutions, and discuss common myths and facts related to correctness, time and space complexity, and simplicity of OT and CRDT. We present facts and evidences that refute CRDT claimed advantages over OT.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
05/02/2019

Real Differences between OT and CRDT in Building Co-Editing Systems and Real World Applications

OT (Operational Transformation) was invented for supporting real-time co...
research
10/04/2018

Real Differences between OT and CRDT for Co-Editors

OT (Operational Transformation) was invented for supporting real-time co...
research
05/02/2019

Real Differences between OT and CRDT under a General Transformation Framework for Consistency Maintenance in Co-Editors

OT (Operational Transformation) was invented for supporting real-time co...
research
05/15/2018

Time-Space Complexity of Quantum Search Algorithms in Symmetric Cryptanalysis

Performance of cryptanalytic quantum search algorithms is mainly inferre...
research
03/28/2022

Certified Mergeable Replicated Data Types

Replicated data types (RDTs) are data structures that permit concurrent ...
research
02/23/2022

Testing report of a fingerprint-based door-opening system

This paper describes the operational evaluation of a door-opening system...
research
12/03/2020

Modeling Adverse Conditions in the Framework of Graph Transformation Systems

The concept of adverse conditions addresses systems interacting with an ...

Please sign up or login with your details

Forgot password? Click here to reset