Collaborative editing: OT vs CRDT for real-time document collaboration
Sarah Bergström
·351 views
our team is looking into building a google docs-like collaborative editing feature for a data visualization tool. it's a complex problem space, and we're debating between operational transformation (ot) and conflict-free replicated data types (crdts). we're targeting 10-50 concurrent editors on a single document, with rich text and potentially embedded objects.
ot seems mature, but the need for a central server to sequence operations, and the complexity of transforming operations, feels like a potential bottleneck and single point of failure. getting the transformation logic right for complex document models can be a nightmare. on the other hand, crdts offer a more elegant, distributed approach where each client can apply operations independently and merge conflicts deterministically. but the literature suggests they can be quite memory-intensive and still have complexities when dealing with things like rich text formatting and cursor positions.
anyone have experience deploying either ot or crdt systems for rich text collaboration in production? what were the biggest pitfalls or unexpected wins? we're leaning towards crdts for the decentralized nature, but the practical implementation details, especially around performance for large documents, are a concern.
0 comments