Near Real-Time Peer-to-Peer Shared Editing on Extensible Data Types

Petru Nicolaescu, Kevin Jahns, M. Derntl, R. Klamma
{"title":"Near Real-Time Peer-to-Peer Shared Editing on Extensible Data Types","authors":"Petru Nicolaescu, Kevin Jahns, M. Derntl, R. Klamma","doi":"10.1145/2957276.2957310","DOIUrl":null,"url":null,"abstract":"Near real-time collaboration using Web browsers is becoming rapidly more and more popular for many applications such as text editing, coding, sketching and others. These applications require reliable algorithms to ensure consistency among the participating Web clients. Operational Transformation (OT) and more recently Commutative Replicated Data Types (CRDT) have become widely adopted solutions for this kind of problem. However, most existing approaches are non-trivial and require trade-offs between expressiveness, suitable infrastructure, performance and simplicity. The ever growing number of potential use cases, the new possibilities of cutting-edge messaging protocols that shaped the near real-time Web, and the use of N-way communication between clients (e.g. WebRTC), create a need for peer-to-peer algorithms that perform well and are not restricted to only a few supported data types. In this paper, we present YATA, an approach for peer-to-peer shared editing applications that ensures convergence, preserves user intentions, allows offline editing and can be utilized for arbitrary data types in the Web browser. Using Yjs, its open-source JavaScript library implementation, we have evaluated the performance and multiple usage of YATA in Web and mobile browsers, both on test and real-world data. The promising evaluation results as well as the uptake by many commercial vendors and open-source projects indicate a wide applicability of YATA.","PeriodicalId":244100,"journal":{"name":"Proceedings of the 2016 ACM International Conference on Supporting Group Work","volume":"297 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2016-11-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"38","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 2016 ACM International Conference on Supporting Group Work","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2957276.2957310","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 38

Abstract

Near real-time collaboration using Web browsers is becoming rapidly more and more popular for many applications such as text editing, coding, sketching and others. These applications require reliable algorithms to ensure consistency among the participating Web clients. Operational Transformation (OT) and more recently Commutative Replicated Data Types (CRDT) have become widely adopted solutions for this kind of problem. However, most existing approaches are non-trivial and require trade-offs between expressiveness, suitable infrastructure, performance and simplicity. The ever growing number of potential use cases, the new possibilities of cutting-edge messaging protocols that shaped the near real-time Web, and the use of N-way communication between clients (e.g. WebRTC), create a need for peer-to-peer algorithms that perform well and are not restricted to only a few supported data types. In this paper, we present YATA, an approach for peer-to-peer shared editing applications that ensures convergence, preserves user intentions, allows offline editing and can be utilized for arbitrary data types in the Web browser. Using Yjs, its open-source JavaScript library implementation, we have evaluated the performance and multiple usage of YATA in Web and mobile browsers, both on test and real-world data. The promising evaluation results as well as the uptake by many commercial vendors and open-source projects indicate a wide applicability of YATA.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
基于可扩展数据类型的近实时点对点共享编辑
使用Web浏览器的近实时协作在许多应用程序(如文本编辑、编码、素描等)中变得越来越流行。这些应用程序需要可靠的算法来确保参与的Web客户机之间的一致性。操作转换(OT)和最近的交换复制数据类型(CRDT)已成为这类问题广泛采用的解决方案。然而,大多数现有的方法都不是简单的,需要在表达性、合适的基础设施、性能和简单性之间进行权衡。潜在用例的数量不断增加,尖端消息协议的新可能性塑造了近乎实时的Web,以及客户端之间N-way通信的使用(例如WebRTC),创造了对性能良好且不限于少数支持数据类型的点对点算法的需求。在本文中,我们提出了YATA,一种用于点对点共享编辑应用程序的方法,它确保了聚合,保留了用户的意图,允许离线编辑,并且可以用于Web浏览器中的任意数据类型。使用Yjs(它的开源JavaScript库实现),我们评估了YATA在Web和移动浏览器中的性能和多重使用情况,包括测试和实际数据。有希望的评估结果以及许多商业供应商和开源项目的采用表明YATA具有广泛的适用性。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Communication, Coordination and Awareness around Continuous Location Sharing Taking a More Balanced Approach to Adolescent Mobile Safety Beyond the Individual: The Dynamic Features of Distributed Affect Exploring Computer-Supported Professional Development for Novice Museum and Zoo Professionals Demo or Die: Narrative Construction as Articulation Work for Promoting Early Stage Digital Innovations
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1