Filesystem Snapshot Deletion via Inode Mapping
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing snapshot deletion processes in data storage systems are resource-intensive, time-consuming, and wasteful due to the need to update and rewrite the namespace, which becomes obsolete quickly as further deletions occur, especially in large filesystems with many concurrent users.
Innovation Solution
The proposed solution involves using an inode mapping file (IMF) to delete snapshots or their portions without updating the namespace, by identifying virtual inodes and corresponding real inodes, and treating directories as version files to avoid directory tree traversal and namespace updates, thus reducing memory, processor power, and energy usage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the namespace is updated and rewritten during snapshot deletion, then the deletion process maintains consistency, but the process becomes resource-intensive and time-consuming
Solution Approach 1:
The patent applies preliminary action by marking snapshots as deleted in the inode mapping file before actually releasing their resources. This allows the deletion process to proceed without immediately updating the namespace, as the snapshot is already marked as unavailable to users. The actual resource release happens later in a separate pass, eliminating the need for costly namespace updates during the initial deletion marking phase.
2Reliability
If directory tree traversal is performed to identify files for deletion, then all files are accurately identified, but the process consumes excessive memory and processor power
Solution Approach 1:
The patent extracts the file identification process from the traditional directory tree traversal approach. Instead of walking through directories to find files, the system directly uses the inode mapping file to identify all files belonging to the snapshot. This extraction eliminates the computationally expensive directory traversal while maintaining accurate file identification, as the inode mapping file already contains all necessary file metadata.
3Reliability
If the namespace is rewritten during deletion, then consistency is maintained, but the namespace becomes obsolete quickly as further deletions occur
Solution Approach 1:
The patent applies preliminary action by marking snapshots as deleted in the inode mapping file before actually releasing their resources. This allows the deletion process to proceed without immediately updating the namespace, as the snapshot is already marked as unavailable to users. The actual resource release happens later in a separate pass, eliminating the need for costly namespace updates during the initial deletion marking phase.
4Reliability
If traditional snapshot deletion is performed with namespace updates, then data integrity is ensured, but resource consumption and energy usage increase
Solution Approach 1:
The patent applies preliminary action by marking snapshots as deleted in the inode mapping file before actually releasing their resources. This allows the deletion process to proceed without immediately updating the namespace, as the snapshot is already marked as unavailable to users. The actual resource release happens later in a separate pass, eliminating the need for costly namespace updates during the initial deletion marking phase.
Data Source
AI summary
Technology described herein can perform deletion of a snapshot or portion thereof. In an embodiment, a system can comprise a processor and a memory that stores executable instructions that, when executed by the processor, facilitate performance of operations. The operations can comprise, to delete a snapshot, or a portion of a snapshot, of a real filesystem, reading an inode mapping file (IMF) of the snapshot that indexes a virtual inode number (VIN) corresponding to a real inode. The operations further can comprise identifying the real inode of the snapshot referenced by the VIN, identifying a file object corresponding to the real inode, and deleting the file object from the snapshot.


