US9767106B1ActiveUtility

Snapshot based file verification

97
Assignee: EMC CORPPriority: Jun 30, 2014Filed: Jun 30, 2014Granted: Sep 19, 2017
Est. expiryJun 30, 2034(~8 yrs left)· nominal 20-yr term from priority
G06F 11/14G06F 11/1448G06F 17/30088G06F 17/30303G06F 11/0727
97
PatentIndex Score
93
Cited by
37
References
20
Claims

Abstract

In an embodiment, a method can include loading a first snapshot of data stored on a storage device, the first snapshot being verified. The method can further include capturing a second snapshot of data stored on the store device after waiting an interval of time from creation of the first snapshot. The method can further include generating a list of closed files between the two snapshots by differentiating the first snapshot and the second snapshot. The method can additionally include verifying the second snapshot by comparing the closed files in the list of closed files by in the second snapshot to the closed files in the storage device, which is an active snapshot. The method can also include deleting the first snapshot.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A method comprising:
 loading a first snapshot of data stored on a storage device; 
 verifying the first snapshot by determining that all segments referred to by files of the first snapshot are reachable in valid containers; 
 capturing a second snapshot of data stored on the storage device after waiting an interval of time from creation of the first snapshot; 
 generating a list of closed files in the second snapshot that are not closed in the first snapshot by differentiating the first snapshot and the second snapshot; 
 verifying the second snapshot by comparing the closed files in the list of closed files in the second snapshot that are not closed in the first snapshot to the closed files in the storage device, wherein the storage device is an active snapshot; and 
 deleting the first snapshot. 
 
     
     
       2. The method of  claim 1 , wherein loading the first snapshot or capturing the second snapshot is performed by latching onto an existing snapshot on the storage device. 
     
     
       3. The method of  claim 1 , wherein generating the list of closed files between the two snapshots further includes determining, for a given file in the first and second snapshot, whether the content handle of the first snapshot is different from the content handle of the second snapshot. 
     
     
       4. The method of  claim 3 , wherein generating the list of closed files between the two snapshots further includes determining, for the given file in the first and second snapshot, whether the content handle of the key of the second snapshot is equal to the content handle of the file on the storage device, and if so, verifying the given file. 
     
     
       5. The method of  claim 1 , wherein the first snapshot and second snapshot are created automatically based on at least one of a timer or an interrupt. 
     
     
       6. The method of  claim 1 , wherein the first snapshot and second snapshot are created by a user command. 
     
     
       7. The method of  claim 1 , further comprising:
 capturing a third snapshot after waiting an interval of time from creation of the second snapshot; 
 wherein the first snapshot, second snapshot, and third snapshot represent snapshots of Mtrees. 
 
     
     
       8. A system comprising:
 a snapshot module configured to load a first snapshot of data stored on a storage device, the first snapshot being verified by determining that segments referred to by files of the first snapshot are reachable in valid containers, and further configured to capture a second snapshot of data stored on the store device after waiting an interval of time from creation of the first snapshot; 
 a differential module configured to generate a list of closed files in the second snapshot that are not closed in the first snapshot by differentiating the first snapshot and the second snapshot; 
 a verification module configured to verify the second snapshot by comparing the closed files in the list of closed files by in the second snapshot that are not closed in the first snapshot to the closed files in the storage device, wherein the storage device is an active snapshot, and delete the first snapshot. 
 
     
     
       9. The system of  claim 8 , wherein loading the first snapshot or capturing the second snapshot is performed by latching onto an existing snapshot on the storage device. 
     
     
       10. The system of  claim 8 , wherein the differential module is further configured to determine, for a given file in the first and second snapshot, whether the content handle of the first snapshot is different from the content handle of the second snapshot. 
     
     
       11. The system of  claim 10 , wherein the differential module is further configured to determine, for the given file in the first and second snapshot, whether the content handle of the key of the second snapshot is equal to the content handle of the file on the storage device, and if so, verify the given file. 
     
     
       12. The system of  claim 8 , wherein the first snapshot and second snapshot are created automatically based on at least one of a timer or an interrupt. 
     
     
       13. The system of  claim 8 , wherein the first snapshot and second snapshot are created by a user command. 
     
     
       14. The system of  claim 8 , further comprising:
 capturing a third snapshot after waiting an interval of time from creation of the second snapshot; 
 wherein the first snapshot, second snapshot, and third snapshot represent snapshots of Mtrees. 
 
     
     
       15. A non-transitory computer-readable medium configured to store instructions for verifying data on a storage device, the instructions, when loaded and executed by a processor, causes the processor to:
 load a first snapshot of data stored on the storage device; 
 verifying the first snapshot by determining that all segments referred to by files of the first snapshot are reachable in valid containers; 
 capture a second snapshot of data stored on the storage device after waiting an interval of time from creation of the first snapshot; 
 generate a list of closed files in the second snapshot that are not closed in the first snapshot by differentiating the first snapshot and the second snapshot; 
 verify the second snapshot by comparing the closed files in the list of closed files in the second snapshot that are not closed in the first snapshot to the closed files in the storage device, wherein the storage device is an active snapshot; and 
 delete the first snapshot. 
 
     
     
       16. The non-transitory computer-readable medium of  claim 15 , wherein loading the first snapshot or capturing the second snapshot is performed by latching onto an existing snapshot on the storage device. 
     
     
       17. The non-transitory computer-readable medium of  claim 15 , wherein the instructions further cause the processor to generate the list of closed files between the two snapshots further by determining, for a given file in the first and second snapshot, whether the content handle of the first snapshot is different from the content handle of the second snapshot. 
     
     
       18. The non-transitory computer-readable medium of  claim 17 , wherein the instructions further cause the processor to generate the list of closed files between the two snapshots further by determining, for the given file in the first and second snapshot, whether the content handle of the key of the second snapshot is equal to the content handle of the file on the storage device, and if so, verifying the given file. 
     
     
       19. The non-transitory computer-readable medium of  claim 15 , wherein the first snapshot and second snapshot are created automatically based on at least one of a timer or an interrupt. 
     
     
       20. The non-transitory computer-readable medium of  claim 15 , wherein the first snapshot and second snapshot are created by a user command.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.