Shared Snapshot Deletion via Clone Data Merge
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing system faces inefficiencies in storage space utilization due to the inability to delete shared snapshots until no clones depend on them, leading to redundant storage of expired or unused snapshots.
Innovation Solution
A method is introduced to efficiently delete shared snapshots by merging data values from the shared snapshot into clone containers and updating dependency relationships, allowing for the deletion of snapshots when they have only one dependent clone and a triggering event occurs, such as a predetermined expiration or significant data overwrite.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a snapshot is retained until zero clones depend from it, then data integrity is maintained, but storage space efficiency deteriorates due to expired shared snapshots locking down redundant storage space
Solution Approach 1:
The patent changes the deletion condition parameter from requiring zero dependent clones to allowing deletion when only one clone remains and a triggering event occurs. This parameter change enables expired snapshots to be deleted while maintaining data integrity through the single-clone dependency mechanism and triggering event validation.
Solution Approach 2:
The patent introduces an intermediary mechanism where the remaining clone acts as a mediator - it must maintain its dependency relationship with the snapshot until the deletion is finalized. This intermediary ensures data integrity is preserved during the transition from shared to exclusive access.
2Quantity of substance
If a snapshot is deleted when only one clone depends from it, then storage space is optimized, but system complexity increases due to merging mappings and updating dependency relationships
Solution Approach 1:
The patent performs preliminary actions by merging the snapshot's mappings into the clone's mappings before deletion occurs. This preliminary merging ensures that all necessary data relationships are established beforehand, simplifying the actual deletion process and reducing the complexity of managing dependency updates.
Solution Approach 2:
The patent extracts the snapshot from the dependency chain by removing its reference from the system after the merge operation. This extraction simplifies the system state by eliminating the deleted snapshot while preserving all necessary data relationships in the clone.
3Reliability
If a snapshot is retained for extended periods, then data access reliability is maintained, but productivity deteriorates due to increased storage overhead and management overhead
Solution Approach 1:
The patent implements periodic deletion opportunities by allowing snapshots to be deleted after a triggering event occurs, such as when the clone reaches a certain state or time threshold. This periodic action enables systematic cleanup of expired snapshots while maintaining data access reliability during the retention period.
Solution Approach 2:
The system performs self-service by automatically identifying and deleting expired snapshots that have only one dependent clone, without requiring manual intervention. This self-service mechanism improves productivity by reducing storage management overhead while maintaining data integrity through automated validation.
Data Source
AI summary
Efficient deletion of a shared snapshot and other workflows are described herein, including: determining to delete a shared snapshot associated with a first container, wherein the shared snapshot shares with a second container at least a subset of data values that are stored by the shared snapshot, the determination is based at least in part on the shared snapshot sharing data values with not more than a prescribed number of containers other than the second container and an occurrence of a deletion triggering event; and causing zero or more data values that are stored by the shared snapshot and shared with the second container to be associated with the second container prior to deleting the shared snapshot.


