Skip to main navigation menu Skip to main content Skip to site footer

Information technologies and systems

August 18, 2023; Cambridge, UK: V International Scientific and Practical Conference «EDUCATION AND SCIENCE OF TODAY: INTERSECTORAL ISSUES AND DEVELOPMENT OF SCIENCES»


СУМІСНЕ РЕДАГУВАННЯ ТЕКСТІВ В РОЗПОДІЛЕНИХ СИСТЕМАХ


DOI
https://doi.org/10.36074/logos-18.08.2023.41
Published
29.08.2023

Abstract

Однією з поширених міжгалузевих задач є створення та редагування текстових документів, що також потребує розв’язання в контексті розподілених систем. Аналіз існуючих рішень для сумісного редагування тексту (Google Docs, Notion, Etherpad) свідчить про обмежену здатність цих систем до розв’язання проблем конфліктів під час одночасних операцій редагування даних, контролю версій та нестабільного мережевого з’єднання. Реплікація дозволяє забезпечити миттєвість редагування тексту та високий рівень доступності системи шляхом забезпечення надлишковості [1]. Реплікація з одним лідером – у системі виділено один спеціальний вузол – лідер, що опрацьовує усі запити на зміну даних. Реплікація з багатьма лідерами – на відміну від попередньої моделі, система дозволяє багатьом вузлам незалежно опрацьовувати запити на запис та зміну даних. Кожен вузол системи, що реалізує такий тип алгоритму, виступає одночасно як лідер і підписник, здатний застосовувати зміни та реплікувати їх на інші вузли. Ця модель забезпечує кращу доступність та пришвидшити продуктивність виконання запитів на запис. Відсутність єдиної точки відмови в такій моделі також підвищує надійність. Недоліком реплікації з багатьма лідерами є необхідність розв’язувати конфлікти – розбіжності між репліками, що виникають унаслідок відмов чи затримок в мережі. Для вирішення проблеми виникнення конфліктів, спричинених одночасними змінами даних у розподілених системах існують два основних підходи: Operational transformation та Conflict-free replicated data types.

References

  1. Dallabetta P. (2022) Data replication explained: examples, types, and use cases. Вилучено із URL: https://redis.com/blog/what-is-data-replication.
  2. Kleppmann M. (2017) Designing data-intensive applications: the big ideas behind reliable, scalable, and maintainable systems. O'Reilly Media, 624 p.
  3. Sun C., Ellis C. (1998) Operational transformation in real-time group editors. the 1998 ACM conference, м. Seattle, Washington, United States, New York, New York, USA, Вилучено із URL https://doi.org/10.1145/289444.289469
  4. Geoffrey Litt, Sarah Lim, Martin Kleppmann, Peter van Hardenberg (2022) Peritext: A CRDT for Collaborative Rich Text Editing / G. Litt та ін. Proceedings of the ACM on Human-Computer Interaction. (InteractionVolume 6, Issue CSCW2: р. 1–36.) URL: https://doi.org/10.1145/3555644.
  5. Preguiça, N., Baquero, C., Shapiro, M. (2018). Conflict-Free Replicated Data Types CRDTs. In: Sakr, S., Zomaya, A. (eds) Encyclopedia of Big Data Technologies. Springer, Cham. https://doi.org/10.1007/978-3-319-63962-8_185-1