File System Snapshot Creation via Metadata Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current methods for taking snapshots of data in computer systems are inefficient, particularly in large-capacity storage devices, as they are time-consuming, expensive, and lack system flexibility, and do not effectively manage modifications or preserve previous versions of files and directories.
Innovation Solution
A method and system for taking snapshots of data in a computer system that allows for the creation of a snapshot of a portion of a file system by indicating a path, retrieving relevant data structures, and tracking modifications, enabling preservation of data as of a specific point in time with per-file or per-directory snapshot capabilities, and efficient access to snapshot data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the entire contents of the storage device are copied to a backup storage device, then previous versions of data can be preserved and accessed, but the process is time-consuming and delays write requests
Solution Approach 1:
The patent divides the file system into individual files and directories, creating snapshots at the granularity level of each file rather than copying the entire storage device. This segmentation allows selective preservation of only the necessary data portions, dramatically reducing snapshot creation time while maintaining the ability to access previous versions.
Solution Approach 2:
The patent creates a copy of the file system metadata structure (inodes, directory entries) without copying the actual data blocks. This metadata-level copying enables rapid snapshot creation by duplicating only the organizational information, while the actual file data remains shared across multiple snapshots through hard links.
2Reliability
If the entire contents of the storage device are copied to a backup storage device, then previous versions of data can be preserved, but additional storage space is required which is financially expensive
Solution Approach 1:
The patent merges multiple snapshots into a single storage structure by using hard links to share common data blocks across different version points in time. Instead of storing complete copies of files at each snapshot, the system combines snapshots with their shared data portions, reducing total storage requirements while preserving historical versions.
Solution Approach 2:
The patent copies only the metadata structure (inodes, directory entries, links) rather than the actual data blocks. This selective copying reduces storage space requirements significantly, as the same data blocks can be referenced by multiple snapshots without requiring separate storage for each version.
3Reliability
If traditional backup methods are used, then data can be preserved, but system flexibility is reduced and cannot adapt to modern large-capacity storage devices
Solution Approach 1:
The patent implements a dynamic snapshot system that can create, delete, and manage snapshots on-demand based on user needs. The system dynamically tracks modifications to files and directories, allowing flexible creation of version points at any moment without requiring pre-configured backup schedules or fixed storage allocations, thereby adapting to modern storage systems.
Solution Approach 2:
The patent segments the file system into manageable units (files and directories) that can be independently snapshotted, providing flexibility in selecting which portions of the storage system to preserve. This granular approach allows the system to adapt to various storage configurations and user requirements, making it versatile for different scenarios.
4Loss of information
If snapshots are created frequently to track modifications, then data versioning is improved, but the complexity of managing multiple versions increases
Solution Approach 1:
The patent implements a feedback mechanism that automatically detects and tracks modifications to files and directories. When a file is modified, the system receives feedback about the change and automatically updates the snapshot metadata to reflect the new version. This automated tracking reduces manual management complexity while maintaining comprehensive version information.
Solution Approach 2:
The patent copies only the essential metadata information (timestamps, modification flags, link references) rather than duplicating entire files. This selective copying simplifies the data structures used to track versions, reducing management complexity while preserving the ability to identify and access specific file versions through their metadata.
Data Source
AI summary
In one embodiment, a user or client device is connected to a distributed file system comprised of one or more physical nodes. The data on each of the physical nodes store metadata about files and directories within the file system. Some of the embodiments permit a user to take a snapshot of data stored on the file system. The snapshot may include a single file, a single directory, a plurality of files within a directory, a plurality of directories, a path on the file system that includes nested files and subdirectories, or more than one path on the file system that each includes nested files and directories. According to one embodiment, the system stores representations of the snapshots that govern a file or directory and its descendants within metadata associated with that file or directory. In one embodiment, before modifying a file or directory, the system updates the representations of the governing snapshots by traversing the metadata of ancestors of the file or directory.


