中文

OT 与 CRDT 用于协同编辑器时的真实差异

分布式、并行与集群计算 2018-10-08 v1 人机交互 软件工程

摘要

OT(Operational Transformation,操作变换)于 1980 年代末被发明用于支持实时协同编辑器,并已发展成为当今可用协同编辑器的核心技术,并被主要工业产品所采用。用于协同编辑器的 CRDT(Commutative Replicated Data Type,交换复制数据类型)大约在 2006 年首次提出,当时名为 WOOT(WithOut Operational Transformation,无操作变换)。后续的 CRDT 变体通常被标榜为“后 OT”技术,能够使并发操作天然可交换,并在正确性、时间和空间复杂度、简洁性等方面广泛声称优于 OT 方案。然而十多年后,CRDT 方案在可用协同编辑器中极少出现,而 OT 方案仍是构建绝大多数协同编辑器的选择。这一现实与 CRDT 所谓优势之间的矛盾,一直是协同编辑研究界和开发者社区中大量争论与困惑的来源。CRDT 对于协同编辑究竟是什么?OT 与 CRDT 用于协同编辑器时的真实差异是什么?在现实世界中,可能影响协同编辑器对 OT 与 CRDT 的采纳与选择的关键因素是什么?在本文中,我们报告了从基于代表性 OT 与 CRDT 方案及其构建的可用协同编辑器的全面回顾与比较研究中,就这些问题及之外所得出的发现。此外,本工作揭示了事实并给出了反驳 CRDT 对 OT 所声称优势的证据。我们希望本文报告的结果有助于澄清围绕替代性协同编辑技术的常见迷思、误解与困惑,并加速面向真实世界应用的协同编辑技术进展。

关键词

引用

@article{arxiv.1810.02137,
  title  = {Real Differences between OT and CRDT for Co-Editors},
  author = {Chengzheng Sun and David Sun and Agustina and Weiwei Cai},
  journal= {arXiv preprint arXiv:1810.02137},
  year   = {2018}
}

备注

33 pages