IP Library Granted Patent US 10,650,057
Granted Patent B2
US 10,650,057 · App. 15/684,409 · Granted May 12, 2020

Volume or virtual machine level backup and generating placeholders for virtual machine files

Inventors: Rahul S. Pawar (Marlboro, NJ); Henry Wallace Dornemann (Eatontown, NJ); Rajiv Kottomtharayil (Marlboro, NJ); Chitra Ramaswamy (Monmouth Junction, NJ); Ashwin Gautamchand Sancheti (Ocean, NJ)
Assignee: COMMVAULT SYSTEMS, INC.
G06F16/907G06F9/45558G06F16/11G06F16/128G06F16/162G06F16/24564G06F2009/45579G06F2201/83
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,650,057
App. No.
15/684,409
Granted
May 12, 2020
Kind
B2
Abstract

According to certain aspects, a method can include creating a backup copy of data associated with a virtual machine (VM) on one or more secondary storage devices, wherein the backup copy includes corresponding secondary copies of a plurality of files associated with the VM; analyzing metadata associated with the secondary copies to determine which of the plurality files are eligible to be removed from the primary storage device; in response determining that one or more files are eligible to be removed from the primary storage device, for respective file of the one or more files: determining whether the respective file has been changed since a first time at which the backup copy of the data associated with the VM was created; in response to determining that the respective file has not changed since the first time, removing the respective file; and adding a file placeholder for the removed file.

Claims (41)

1. A method of removing files associated with a virtual machine (VM), the method comprising:

creating a backup copy of data associated with a VM on one or more secondary storage devices, wherein the data associated with the VM resides on a primary, storage device and comprises a-plurality of files associated with the VM, and wherein the backup copy comprises corresponding secondary copies of the plurality of files;

generating first metadata associated with the backup copy, wherein the first metadata indicates, for each respective file included in the backup copy, when the respective file was last modified or accessed;

identifying, based on the first metadata associated with the backup copy and without accessing the data associated with the VM residing on the primary storage device, a set of candidate files from the plurality of files that are eligible to be removed from the primary storage device; and

for each candidate file in the set of candidate files identified based on the first metadata associated with the backup copy and without accessing the data associated with the VM residing on the primary storage device:

determining, based on second metadata associated with the candidate file stored on the primary storage device, whether the candidate file has changed since a first time at which the backup copy including the candidate file was created;

in response to determining that the candidate file has not changed since the first time at which the backup copy including the candidate file was created, removing the candidate file from the primary storage device; and

adding a file placeholder for the removed candidate file on the primary storage device.

2. The method of claim 1 , wherein:

the data associated with the VM is included in a volume that resides at least in part on the primary storage device; and

said creating a backup copy of data associated with the VM comprises creating a backup copy of the volume.

3. The method of claim 2 , wherein the backup copy of the volume is a snapshot of the volume.

4. The method of claim 3 , wherein the snapshot is a hardware snapshot.

5. The method of claim 1 , wherein the first metadata comprises one or more of: file creation time, file access time, file modification time, file size, file extension, user associated with a file, or application associated with a file.

6. The method of claim 1 , further comprising identifying the set of candidate files based on a determination that each candidate file in the set has not been modified or accessed for a threshold amount of time.

7. The method of claim 1 , further comprising identifying the set of candidate files based on a determination that each candidate file in the set has been accessed fewer that a threshold number of times.

8. The method of claim 1 , further comprising refraining from removing the candidate file in the set based on a determination that the candidate file has changed since the first time at which the backup copy including the candidate file was created.

9. The method of claim 1 , wherein said creating a backup copy of data associated with the VM comprises:

identifying changed blocks since a time at which a previous backup copy of the data associated with the VM was created; and

copying only the changed blocks to the one or more secondary storage devices.

10. The method of claim 9 , wherein a hypervisor associated with the VM identifies the changed blocks.

11. The method of claim 9 , wherein a driver marks used blocks to identify the changed blocks.

12. The method of claim 9 , wherein the changed blocks are identified by signature comparison.

13. The method of claim 1 , wherein the file placeholder comprises a unique identifier associated with the secondary copy of the removed candidate file and an offset associated with the secondary copy of the removed candidate file.

14. The method of claim 1 , further comprising, in response to an access of the file placeholder for the removed candidate file, restoring the secondary copy of the removed candidate file from the one or more secondary storage devices to the primary storage device.

15. An information management system configured to remove files associated with a virtual machine (VM), the system comprising:

one or more computing devices comprising computer hardware and configured to:

create a backup copy of data associated with a VM on one or more secondary storage devices, wherein the data associated with the VM resides on a primary storage device and comprises a plurality of files associated with the VM, and wherein the backup copy comprises corresponding secondary copies of the plurality of files;

generate first metadata associated with the backup copy, wherein the first metadata indicates, for each respective file included in the backup copy, when the respective file was last modified or accessed;

identify, based on the first metadata associated with the backup copy and without accessing the data associated with the VM residing on the primary storage device, a set of candidate files from the plurality of files that are eligible to be removed from the primary storage device; and

for each candidate file in the set of candidate files identified based on the first metadata associated with the backup copy and without accessing the data associated with the VM residing on the primary storage device:

determine, based on second metadata associated with the candidate file stored on the primary storage device, whether the candidate file has changed since a first time at which the backup copy including the candidate file was created;

in response to determining that the candidate file has not changed since the first time at which the backup copy including the candidate file was created, remove the candidate file from the primary storage device; and

add a file placeholder for the removed candidate file on the primary storage device.

16. The system of claim 15 , wherein:

the data associated with the VM is included in a volume that resides at least in part on the primary storage device; and

the one or more computing devices are further configured to, as part of the creation of the backup copy of the data associated with the VM, create a backup copy of the volume.

17. The system of claim 15 , wherein the first metadata comprises one or more of: file creation time, file access time, file modification time, file size, file extension, user associated with a file, or application associated with a file.

18. The system of claim 15 wherein the one or more computing devices are further configured to identify the set of candidate files based on a determination that each candidate file in the set has not been modified or accessed for a threshold amount of time.

19. The system of claim 15 , wherein the one or more computing devices are further configured to identify the set of candidate files based on a determination that each candidate file in the set has been accessed fewer that a threshold number of times.

20. The system of claim 15 , wherein the one or more computing devices are further configured to refrain from removing the candidate file in the set based on a determination that the candidate file has changed since the first time at which the backup copy including the candidate file was created.

Assignments (3)
SUPPLEMENTAL CONFIRMATORY GRANT OF SECURITY INTEREST IN UNITED STATES PATENTS Recorded Apr 16, 2025
From: COMMVAULT SYSTEMS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 070864/0344 →
SECURITY INTEREST Recorded Dec 13, 2021
From: COMMVAULT SYSTEMS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 058496/0836 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 23, 2017
From: PAWAR, RAHUL S.; DORNEMANN, HENRY WALLACE; KOTTOMTHARAYIL, RAJIV; RAMASWAMY, CHITRA; SANCHETI, ASHWIN GAUTAMCHAND
To: COMMVAULT SYSTEMS, INC.
Reel/Frame 043376/0159 →
Continuity (2)
Continuation 14333328 · Jul 16, 2014
Related Publication 20180075166A1 · Mar 15, 2018
Cited By (9)
US 12,204,929 US 12,235,744 US 12,299,467 US 12,306,792 US 12,360,942 US 12,373,308 US 12,430,214 US 12,639,173 US 12,681,817