Reversible Data Deletion in Collaborative Development Environments
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current data storage systems perform garbage collection by removing unused data, but this process is irreversible, leading to a need for methods and systems that can both delete unused data and allow for its recovery.
Innovation Solution
The system identifies objects not linked to the root object in a data model, generates a fingerprint for deletion instructions, and uses a stack data structure to store reverse instructions for undoing deletions, enabling data recovery by transmitting specific instructions to user devices for deletion and restoration.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If garbage collection removes unused data from memory, then memory space is freed for needed operations, but the deleted data cannot be recovered by the end user
Solution Approach 1:
The system performs preliminary actions by creating a reversible copy of the deletion operation. Before permanently removing data, the system stores reverse instructions in a stack data structure that contain all necessary information to restore the deleted object. This preliminary preparation enables data recovery while still allowing garbage collection to free memory space.
Solution Approach 2:
The system implements a discard and recover mechanism where deleted objects are not immediately and permanently removed. Instead, the system discards the original data references while retaining the capability to recover them through stored reverse instructions. When a user requests recovery, the system executes these reverse instructions to restore the deleted data, thus enabling both memory management and data recovery.
2Loss of information
If the system stores reverse instructions for every deletion to enable recovery, then data can be recovered, but system complexity increases
Solution Approach 1:
The system creates a simplified copy of the deletion operation in the form of reverse instructions stored in a stack. Instead of maintaining complex undo mechanisms, the system copies the essential information needed for recovery (fingerprint, reverse operation details) into a simple stack data structure. This copying approach enables data recovery while keeping the system structure relatively simple and manageable.
3Stability of the object's composition
If the system transmits deletion instructions to multiple user devices, then data consistency is maintained across devices, but network communication overhead increases
Solution Approach 1:
The system transmits copies of deletion and reverse instructions to multiple user devices to maintain data consistency across the collaborative environment. Each device receives and stores these instructions locally, enabling independent execution and recovery operations without requiring constant network communication. This copying approach ensures consistency while reducing ongoing network overhead.
Data Source
AI summary
An object that is not linked to a root object of a data model is identified. A first instruction comprising a fingerprint and a request to delete the object from memory is transmitted to a plurality of user devices. A second instruction to undo the first instruction is received from one of the plurality of user devices, and, in response to the second instruction, a third instruction comprising the fingerprint and a request to execute and delete any instruction that includes the fingerprint is transmitted to the plurality of user devices.


