De-duplication based backup of file systems
DCFirst Claim
1. A method for performing backup of file systems, the method comprising:
- receiving data blocks for a plurality of point-in-time copies of a source file system, each point-in-time copy of the source file-system obtained by extracting data blocks from the source file-system that changed since a previous point-in-time copy was extracted, the source file system comprising at least a source file;
storing the data blocks on a storage system, the stored data blocks comprising one or more versions of a data block, each version corresponding to a point-in-time copy;
receiving a request to restore information obtained from the source file system for a target system; and
responsive to receiving the request to restore, creating a virtual restored file system comprising a set of files including a restored file corresponding to the source file, the creating comprising;
linking the restored file to a plurality of the data blocks stored on the storage system, the plurality of data blocks comprising at least a first data block associated with a first point in time copy and a second data block associated with a second point in time copy, andmounting the set of files to the target system to allow the target system to access the set of files, the mounted set of files comprising the virtual restored file system.
14 Assignments
Litigations
2 Petitions
Accused Products
Abstract
File system backups are performed by copying information describing changes in the file system since a previous point in time. To restore data, a virtual restored file system (VRFS) structure is created corresponding to a snapshot of data copied from the file system that is stored in the backup file system. A client can read the data stored in the backup file system pointed at by the VRFS structure as well as write to the backup file system. Multiple clients can share blocks of data stored on the backup file system via the same VRFS structure or via multiple VRFS structures. If a client writes to a data block pointed at by a VRFS, a copy of the data block is made to which the client makes changes so that the data in the original data blocks is saved for other clients.
71 Citations
21 Claims
-
1. A method for performing backup of file systems, the method comprising:
-
receiving data blocks for a plurality of point-in-time copies of a source file system, each point-in-time copy of the source file-system obtained by extracting data blocks from the source file-system that changed since a previous point-in-time copy was extracted, the source file system comprising at least a source file; storing the data blocks on a storage system, the stored data blocks comprising one or more versions of a data block, each version corresponding to a point-in-time copy; receiving a request to restore information obtained from the source file system for a target system; and responsive to receiving the request to restore, creating a virtual restored file system comprising a set of files including a restored file corresponding to the source file, the creating comprising; linking the restored file to a plurality of the data blocks stored on the storage system, the plurality of data blocks comprising at least a first data block associated with a first point in time copy and a second data block associated with a second point in time copy, and mounting the set of files to the target system to allow the target system to access the set of files, the mounted set of files comprising the virtual restored file system. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method for performing backups of file systems, the method comprising:
-
receiving requests to perform backups of plurality of source file systems, each request identifying a source file system, the source file system comprising at least a source file; for each request received, performing backup of an associated source file system, comprising; receiving data blocks for a plurality of point-in-time copies of the associated source file system each point-in-time copy of the associated source file-system obtained by extracting data blocks from the associated source file-system that changed since a previous point-in-time copy was extracted, and storing on a storage system, the data blocks, the stored data blocks comprising one or more versions of a data block, each version corresponding to a point-in-time copy; and receiving a request to restore information obtained from a particular source file system, the request to restore identifying a target system; and responsive to receiving the request to restore the particular source file system, creating a virtual restored file system comprising a set of files including a restored file corresponding to the source file, the creating comprising; linking the restored file to a plurality of stored data blocks stored on the storage system, the plurality of data blocks comprising at least first data block associated with a first point in time copy and a second data block associated with a second point in time copy, and mounting the set of files to the target system to allow the target system to access the set of files, the mounted set of files comprising the virtual restored file system. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
-
18. A computer program product having a computer-readable storage medium storing computer-executable code for performing backup of file systems, the code comprising:
-
a block copy manager configured to; receive data blocks for a plurality of point-in-time copies of a source file system, each point-in-time copy of the source file-system obtained by extracting data blocks from the source file-system that changed since a previous point-in-time copy was extracted, the source file system comprising at least a source file; a storage allocation manager module configured to; store on a storage system, the data, blocks; a virtual restored file system manager configured to; receive a request to restore information from the source file system for a target system; and responsive to receiving the request to restore, create a virtual restored file system comprising a set of files including a restored file corresponding to the source file, the create comprising; linking the restored file to a plurality of the data blocks stored on the storage system, the plurality of data blocks comprising at least a first data block associated with a first point in time copy and a second data block associated with a second point time copy, and mounting the set of files to the target system to allow the target system to access the set of files, the mounted set of files comprising the virtual restored file system. - View Dependent Claims (19, 20, 21)
-
Specification