IP Library Granted Patent US 9,612,914
Granted Patent B1
US 9,612,914 · App. 13/555,466 · Granted Apr 4, 2017

Techniques for virtualization of file based content

Inventor: Srineet Sridharan (Pune, IN)
Assignee: Veritas Technologies LLC
G06F11/1456G06F12/109G06F9/45533G06F11/1469G06F11/1471G06F11/323G06F17/30008
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 9,612,914
App. No.
13/555,466
Granted
Apr 4, 2017
Kind
B1
Abstract

Techniques for virtualization of file based content are disclosed. In one particular exemplary embodiment, the techniques may be realized as a method for virtualization of file based content comprising creating, using at least one computer processor, a virtual disk containing metadata associated with one or more files of a backup image. The techniques may include receiving an Input/Output (I/O) request associated with a file of the one or more files of the virtual disk, determining whether the Input/Output (I/O) request is directed towards a virtual disk location containing a portion of the metadata of the virtual disk or a virtual disk location indicating file data of the backup image, sending the Input/Output (I/O) request to the backup image to the virtual disk based on the determination.

Claims (45)

1. A method for virtualization of file based content comprising:

creating, using at least one computer processor, a virtual disk containing metadata associated with one or more files of a backup image but not file data associated with the one or more files of the backup image, wherein the virtual disk contains the one or more files of the backup image listed with identical sizes to corresponding files on the backup image but having no data other than the metadata;

receiving an Input/Output (I/O) request associated with a file of the one or more files of the virtual disk;

determining whether the I/O request is directed towards a virtual disk location containing a portion of the metadata or a virtual disk location indicating file data of the backup image;

sending the I/O request to the backup image in the event the I/O request is directed towards the virtual disk location indicating the file data of the backup image; and

sending the I/O request to the virtual disk in the event the I/O request is directed towards the virtual disk location containing the portion of the metadata.

2. The method of claim 1 , wherein if the I/O request is directed towards a virtual disk location indicating file data of the backup image, further comprising determining if the file data requested by the I/O request is in an index.

3. The method of claim 2 , wherein file metadata of a virtual disk file contains a list of one or more volume blocks allocated to the file, and wherein an address of a disk block of the I/O request is mappable to a volume block using the list of one or more volume blocks and the volume block is mappable to a file offset of a file containing it.

4. The method of claim 1 , further comprising using a filter driver to redirect I/O requests based on the determination of the requested virtual disk location.

5. The method of claim 1 , wherein the virtual disk location requested comprises an offset.

6. The method of claim 1 , further comprising:

detecting that the I/O request is a write request; and

sending the I/O request to a delta file.

7. The method of claim 6 , further comprising:

determining that the I/O request is for data previously written to the delta file; and

sending the I/O request to the delta file.

8. The method of claim 6 , further comprising:

saving the delta file to allow subsequent use of changes written to the delta file.

9. The method of claim 1 , further comprising storing a mapping of one or more file block locations.

10. The method of claim 9 , wherein the mapping stores file block locations based on an algorithm including at least one of: most recently used block, least recently used block, most frequently used block, and least frequently used block.

11. The method of claim 9 , wherein the mapping is maintained by a filter driver.

12. The method of claim 1 , wherein the virtual disk comprises at least one of: a Virtual Machine Disk (VMDK), a Virtual Hard Disk (VHD), and a Virtual Disk Image (VDI).

13. The method of claim 1 , wherein the virtual disk is based on the backup image and wherein file data copying is minimized to reduce a time to restore services of a failed system by reducing a time to implement a virtual machine.

14. The method of claim 1 , wherein the metadata of the virtual disk comprises at least one of: a master boot record and a Global Unique Identifier (GUID) partition table.

15. The method of claim 1 , wherein the virtual disk comprises at least one of: one or more inodes and one or more master file table (MFT) records.

16. At least one non-transitory processor readable storage medium for storing a computer program of instructions configured to be readable by at least one processor for instructing the at least one processor to execute a computer process for performing the method as recited in claim 1 .

17. An article of manufacture for virtualization of file based content, the article of manufacture comprising:

at least one non-transitory processor readable medium; and

instructions stored on the at least one medium;

wherein the instructions are configured to be readable from the at least one medium by at least one processor and thereby cause the at least one processor to operate so as to:

create a virtual disk containing metadata associated with one or more files of a backup image but not file data associated with the one or more files of the backup image, wherein the virtual disk contains the one or more files of the backup image listed with identical sizes to corresponding files on the backup image but having no data other than the metadata;

receive an Input/Output (I/O) request associated with a file of the one or more files of the virtual disk;

determine whether the I/O request is directed towards a virtual disk location containing a portion of the metadata or a virtual disk location indicating file data of the backup image;

send the I/O request to the backup image in the event the I/O request is directed towards the virtual disk location indicating the file data of the backup image; and

send the I/O request to the virtual disk in the event the I/O request is directed towards the virtual disk location containing the portion of the metadata.

18. A system for virtualization of file based content comprising:

one or more processors communicatively coupled to a network; wherein the one or more processors are configured to:

create a virtual disk containing metadata associated with one or more files of a backup image but not file data associated with the one or more files of the backup image, wherein the virtual disk contains the one or more files of the backup image listed with identical sizes to corresponding files on the backup image but having no data other than the metadata;

receive an Input/Output (I/O) request associated with a file of the one or more files of the virtual disk;

determine whether the I/O request is directed towards a virtual disk location containing a portion of the metadata or a virtual disk location indicating file data of the backup image;

send the I/O request to the backup image in the event the I/O request is directed towards the virtual disk location indicating the file data of the backup image; and

send the I/O request to the virtual disk in the event the I/O request is directed towards the virtual disk location containing the portion of the metadata.

19. The system of claim 18 , wherein if the I/O request is directed towards a virtual disk location indicating file data of the backup image, the one or more processors are further configured to determine if the file data requested by the I/O request is in an index.

20. The system of claim 18 , further comprising:

a filter driver configured to redirect I/O requests based on the determination of the requested virtual disk location.

Assignments (14)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 7, 2026
From: VERITAS TECHNOLOGIES LLC
To: COHESITY, INC.
Reel/Frame 075763/0001 →
AMENDMENT NO. 1 TO PATENT SECURITY AGREEMENT Recorded Apr 8, 2025
From: VERITAS TECHNOLOGIES LLC; COHESITY, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 070779/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2025
From: VERITAS TECHNOLOGIES LLC
To: COHESITY, INC.
Reel/Frame 070335/0013 →
RELEASE OF SECURITY INTEREST Recorded Dec 16, 2024
From: ACQUIOM AGENCY SERVICES LLC, AS COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC (F/K/A VERITAS US IP HOLDINGS LLC)
Reel/Frame 069712/0090 →
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 069634/0584 →
SECURITY INTEREST Recorded Dec 9, 2024
From: VERITAS TECHNOLOGIES LLC; COHESITY, INC.
To: JPMORGAN CHASE BANK. N.A.
Reel/Frame 069890/0001 →
ASSIGNMENT OF SECURITY INTEREST IN PATENT COLLATERAL Recorded Nov 25, 2024
From: BANK OF AMERICA, N.A., AS ASSIGNOR
To: ACQUIOM AGENCY SERVICES LLC, AS ASSIGNEE
Reel/Frame 069440/0084 →
TERMINATION AND RELEASE OF SECURITY IN PATENTS AT R/F 037891/0726 Recorded Nov 30, 2020
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: VERITAS US IP HOLDINGS, LLC
Reel/Frame 054535/0814 →
SECURITY INTEREST Recorded Aug 20, 2020
From: VERITAS TECHNOLOGIES LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 054370/0134 →
MERGER Recorded Apr 18, 2016
From: VERITAS US IP HOLDINGS LLC
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 038483/0203 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 037891/0726 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037891/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2016
From: SYMANTEC CORPORATION
To: VERITAS US IP HOLDINGS LLC
Reel/Frame 037693/0158 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 24, 2012
From: SRIDHARAN, SRINEET
To: SYMANTEC CORPORATION
Reel/Frame 028627/0384 →