Systems and methods for a snapshot of data
First Claim
1. A method for taking a snapshot of a portion of a file system including files and directories, comprising:
- accepting at least one path that represents a portion of a file system where the portion is less than the entire file system;
retrieving at least one data structure that represents the top-most level of the at least one path; and
prior to any modifications of the portion of the file system represented by the at least one path, indicating in the at least one data structure that the at least one path is governed by a snapshot.
12 Assignments
0 Petitions
Accused Products
Abstract
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.
242 Citations
22 Claims
-
1. A method for taking a snapshot of a portion of a file system including files and directories, comprising:
-
accepting at least one path that represents a portion of a file system where the portion is less than the entire file system; retrieving at least one data structure that represents the top-most level of the at least one path; and prior to any modifications of the portion of the file system represented by the at least one path, indicating in the at least one data structure that the at least one path is governed by a snapshot. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A data structure for tracking modifications in a file system comprising:
-
a first representation of a snapshot that is associated with the data structure; and a second representation of data structures governed by the snapshot that have been modified.
-
-
14. A data structure associated with files or directories in a file system comprising:
-
an identification field comprised of a first portion and second portion, wherein the first portion is common to versions of the data structure and the second portion is unique to a particular version of the data structure; a representation of snapshots that govern the data structure; and a last access field that indicates when the representation was last updated.
-
-
15. A system for accessing snapshot data in a file system comprising:
-
a storage device comprising a file system; and a processor operably coupled to the storage device configured to; accept an access request to a path corresponding to a portion of the file system; determine that the portion of the file system is governed by a snapshot; identify locations in the storage device that store snapshot data; retrieve the snapshot data; and generate an indication that the snapshot data is not the current version of the data. - View Dependent Claims (16, 17)
-
-
18. A data storage system with per-file snapshot capability comprising:
-
directory and file nodes forming a data structure tree; and a software snapshot module configured to allow for preservation of data on a per-file basis as of a given point in time.
-
-
19. A data storage system with snapshot capability on a per directory and downstream files basis comprising:
-
directory and file nodes forming a data structure tree; and a software snapshot module configured to preserve data stored in all directories and files downstream of the directory which is both closest to the files that include the desired data to be preserved as of a given time and from which directory paths lead down to all said files including the desired snapshot data.
-
-
20. A method of preserving data stored in a storage system as of a selected time comprising:
-
identifying the file within the storage system that includes the desired data to be preserved as of a selected time; and preserving all the data within said file as of said selected time. - View Dependent Claims (21)
-
-
22. A method of preserving data stored in a storage system as of a selected time comprising:
-
identifying the files within the storage system that include the desired data to be preserved as of a selected time; identifying the directory in the directory/file tree closest to all the identified files and from which paths lead down to the identified files; and preserving the data in all the files downstream of the identified directory including all downstream files, if any, that were not identified as including data desired to be preserved as of said selected time.
-
Specification