Coordinating File Sync via Collaborative Metadata Backoff
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing file synchronization systems face conflicts and complexity when managing changes between local and cloud storage systems, particularly in collaborative document editing scenarios, leading to issues like file overwriting and discrepancies in maintained file states.
Innovation Solution
A computing system with a synchronization engine that uses collaborative metadata to synchronize file changes, allowing a co-authoring application to manage updates by receiving a backoff indicator and maintaining metadata for both local and cloud versions of a file, thereby simplifying the synchronization process and resolving conflicts.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the synchronization engine manages file changes between local and cloud storage systems, then file synchronization capability is improved, but system complexity and conflict management difficulty increase
Solution Approach 1:
The patent introduces collaborative metadata as an intermediary mechanism between the synchronization engine and co-authoring application. This metadata structure serves as a mediator that carries version information, conflict resolution instructions, and synchronization state data, allowing the system to manage file changes without direct complex communication between all components.
Solution Approach 2:
The synchronization system is segmented into distinct functional components: the synchronization engine that handles basic file sync operations, the co-authoring application that manages collaborative editing, and the collaborative metadata that stores synchronization state. This segmentation allows each component to focus on specific tasks and reduces overall system complexity.
2Reliability
If the synchronization engine downloads and uploads files to maintain sync between local and cloud storage, then file consistency is improved, but loss of local changes and overwriting issues occur
Solution Approach 1:
The system performs preliminary actions by maintaining collaborative metadata that tracks the state of files before synchronization operations. The co-authoring application prepares conflict resolution strategies in advance by analyzing the collaborative metadata, so when downloads or uploads occur, the system can apply pre-planned conflict resolution rather than losing local changes.
3Reliability
If the cloud-based storage system delegates synchronization to a co-authoring application, then synchronization capability is improved, but communication complexity between system and application increases
Solution Approach 1:
Collaborative metadata acts as an intermediary data structure that standardizes communication between the cloud-based storage system and the co-authoring application. Instead of complex direct communication protocols, both systems interact through this shared metadata format, which encapsulates all necessary synchronization information in a structured way.
4Measurement precision
If the synchronization engine tracks file state changes between local disk and cloud storage, then change detection accuracy is improved, but synchronization time and processing overhead increase
Solution Approach 1:
The system maintains collaborative metadata as a copy or representation of file state information rather than tracking every actual file change event. This metadata copy allows the synchronization engine to detect changes by comparing metadata states rather than monitoring continuous file system events, reducing processing overhead while maintaining detection accuracy.
Data Source
AI summary
A computing system includes at least one processor and memory storing instructions executable by the at least one processor, wherein the instructions, when executed, cause the computing system to instruct a synchronization engine to synchronize first and second versions of a file, the first version being stored on a first storage system and the second version being stored on a second storage system, receive a backoff indicator corresponding to the file, based on the backoff indicator, instruct the synchronization engine to backoff synchronizing changes to the file, and allow the changes to the file to be synchronized by a co-authoring application, maintain a first set of collaborative metadata indicative of content of the first version of the file, and maintain a second set of collaborative metadata indicative of content of the second version of the file.


