Distributed Collaborative Storage Operational Transformation Conflict Resolution

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvecollaborative editing capabilityVSAvoidconflict resolution capability
Core Design Contradiction:
Adaptability or versatilityVSReliability

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.

Inventive Principle:
Principle #10Preliminary action

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.

Inventive Principle:
Principle #24Intermediary (Mediator)

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

Engineering Contradiction:
Improveediting speedVSAvoiddata consistency
Core Design Contradiction:
SpeedVSStability of the object's composition

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #3Local quality

3Reliability

If the system transforms every conflicting operation to ensure consistency, then data reliability is improved, but processing time increases due to transformation overhead

Engineering Contradiction:
Improvedata consistencyVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

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.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11347933B1Distributed collaborative storage with operational transformation
Publication Date: 2022.05.31 GOOGLE LLC
  • US11347933B1 patent drawing
  • US11347933B1 patent drawing
  • US11347933B1 patent drawing

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.