Cloud File Versioning Heuristic Storage Optimization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current cloud computing systems face inefficiencies in managing and storing multiple versions of files, particularly in cloud-based environments, as they often store all versions of files, leading to significant memory usage and complexity, without effectively distinguishing between significant and minor changes.
Innovation Solution
A client-side synchronization engine and versioning API are implemented to automatically upload updated files to a cloud system, determining whether to store them as new versions or replace existing ones based on heuristic algorithms, preserving only significant or historical versions while discarding minor changes, thereby optimizing storage and memory usage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of information
If all versions of files are stored in the cloud system, then complete version history is maintained, but memory usage increases significantly
Solution Approach 1:
The system changes the storage parameter from storing all versions to storing only significant versions by applying a threshold parameter (heuristic algorithm) that evaluates the importance of each version based on change magnitude, thereby reducing storage requirements while maintaining essential version history
Solution Approach 2:
The system extracts and stores only the significant versions of files in the cloud while discarding minor versions, separating the essential version history from redundant data, thus reducing memory usage while preserving important information
2Loss of information
If all versions of files are stored in the cloud system, then complete version history is maintained, but system complexity increases
Solution Approach 1:
The system simplifies the version management complexity by introducing a threshold parameter that automatically filters versions, transforming the complex task of managing all versions into a simpler process of identifying and storing only significant versions
Solution Approach 2:
The system performs self-service version filtering using heuristic algorithms that automatically determine which versions to store without requiring manual intervention or complex user configuration, thereby reducing operational complexity
3Loss of information
If minor changes are stored as new versions, then complete change history is maintained, but storage resources are wasted
Solution Approach 1:
The system applies a threshold parameter to distinguish between significant and minor changes, storing only versions that exceed the threshold and thereby reducing storage resource consumption while maintaining meaningful change history
Solution Approach 2:
The system extracts and stores only significant changes that meet the threshold criteria, separating valuable version history from wasted storage on minor revisions, thus optimizing storage resources
Data Source
AI summary
Disclosed are some examples of systems, methods and storage media for synchronizing files between a user's computer and a remote system, and more specifically, to strategically storing updated versions of a file on the remote system. In some implementations, a system is capable of receiving a request including an updated version of a file. The system is additionally capable of identifying a version type of the updated version, identifying a current version of the file stored in one or more storage devices, and determining, based on the version type of the updated version, whether to store the updated version in the one or more storage devices as a new version or to replace the current version with the updated version. The system is further capable of storing the updated version in the one or more storage devices based on the determination.


