Distributed Collaborative Storage Operational Transformation Conflict Resolution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing online document processing services lack effective conflict resolution mechanisms for simultaneous edits made by multiple users, leading to inconsistencies in collaborative document editing.
Innovation Solution
A system and method that involves operational transforms, where a server prohibits write access to an object, transforms conflicting operations, and then allows write access, ensuring consistency by updating version numbers and operation histories, and managing write locks to resolve conflicts and synchronize changes across user devices.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If multiple users can simultaneously access and edit a document remotely, then collaborative editing capability is improved, but conflict resolution capability deteriorates due to limited mechanisms for handling conflicting edits
Solution Approach 1:
The system performs preliminary actions by establishing write locks before edits occur and transforming operations in advance to prevent conflicts. When a user requests write access, the system proactively grants exclusive access and transforms any pending operations, ensuring conflict-free editing before it happens rather than resolving conflicts after they occur.
Solution Approach 2:
The server acts as an intermediary that mediates between multiple users' edit operations. It receives operations from different users, transforms conflicting operations into compatible forms, and manages write locks to coordinate access. This intermediary mechanism enables reliable conflict resolution while maintaining collaborative editing capabilities.
2Speed
If write access is granted to multiple servers simultaneously for different portions of a document, then editing speed is improved, but data consistency deteriorates due to potential conflicts in overlapping regions
Solution Approach 1:
The document is segmented into different portions with write locks managed independently for each segment. When Server 1 has write access to a first portion, Server 2 can simultaneously have write access to a second portion. This segmentation enables parallel editing while maintaining consistency within each segment through isolated lock management.
Solution Approach 2:
Write lock permissions are made local to specific document portions rather than global. Each server receives write access to specific portions of the document where no conflicts exist, allowing simultaneous edits in different regions while maintaining data consistency through localized access control.
3Reliability
If the system transforms every conflicting operation to ensure consistency, then data reliability is improved, but processing time increases due to transformation overhead
Solution Approach 1:
The system applies transformation selectively rather than universally. It transforms operations only when conflicts are detected or when write locks need to be granted, rather than transforming every operation unconditionally. This partial action approach maintains data consistency while minimizing unnecessary processing overhead.
Data Source
AI summary
Systems and methods are disclosed herein for performing operational transforms on a document. A first operation is received at a first server that includes a first object of an electronic document. In response to receiving the first operation, the first server prohibits a second server from having write access to the first object. The first server applies the first operation to the first object to obtain a transformed first object. In response to obtaining the transformed first object, the first server allows the second server to have write access to the first object. These steps are repeated for a second object associated with a second portion of the electronic document that is different from the first portion of the electronic document.


