IP Library Granted Patent US 10,318,489
Granted Patent B2
US 10,318,489 · App. 14/695,482 · Granted Jun 11, 2019

Avoiding full file replication using sparse files

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,318,489
App. No.
14/695,482
Granted
Jun 11, 2019
Kind
B2
Abstract

Examples disclosed herein provide systems, methods, and software for avoiding data replication using sparse files. In one example, a method of using a sparse file to manage modifications to read-only files includes identifying an open file request on a computing system for a read-only file, and generating the sparse file corresponding to the read-only file. The method further includes identifying a modification to the read-only file and, responsive to identifying the modification, initiate a write to the sparse file based on the modification and identifying the write in a region map.

Claims (44)

1. A method of using a sparse file to manage modifications to read-only files, the method comprising:

identifying a request by a user of a plurality of users in a virtual machine of a plurality virtual machines to open a read-only file stored in a read-only volume attached to the virtual machine, the read-only file accessible by the plurality of users of the plurality of virtual machines via attachment of the read-only volume to the plurality of virtual machines;

in response to the request, generating the sparse file corresponding to the read-only file, wherein the sparse file is unique to the user of the virtual machine, and wherein the sparse file is stored in a writable volume attached to the virtual machine and associated with the user;

identifying a modification to the read-only file; and

responsive to identifying the modification, initiating a write to the sparse file based on the modification and identifying the write in a region map.

2. The method of claim 1 wherein generating the sparse file corresponding to the read-only file comprises, in a file system for the virtual machine, generating the sparse file corresponding to the read-only file.

3. The method of claim 2 wherein the sparse file comprises an equivalently sized sparse file to the read-only file.

4. The method of claim 1 further comprising: identifying a second modification to the read-only file; and

responsive to identifying the second modification, initiating a second write to the sparse file based on the second modification and identifying the second write in the region map.

5. The method of claim 1 further comprising:

identifying a second request by a second user of a second virtual machine to open the read-only file; and

in response to the second request, generating a second sparse file corresponding to the read-only file, wherein the second sparse file is unique to the second user of the second virtual machine, and wherein the second sparse file is stored in a second writable volume attached to the second virtual machine and associated with the second user.

6. The method of claim 1 wherein the read-only file comprises one of a text file, a database file, an image, or a HyperText Markup Language (HTML) file.

7. The method of claim 1 further comprising:

identifying a read request for the read-only file; and

retrieving data for the read request from one of the read-only file or the sparse file based on the region map.

8. The method of claim 1 wherein the read-only file is stored in a read-only volume available to the plurality of users, and wherein the sparse file is stored in a write volume available to the user.

9. An apparatus to manage modifications to read-only files, the apparatus comprising:

one or more non-transitory computer readable media;

processing instructions stored on the one or more non-transitory computer readable that, when executed by processing circuitry, direct the processing circuitry to:

identify a file request on by a user of a plurality of users in a virtual machine of a plurality of virtual machines to open a read-only file stored in a read-only volume attached to the virtual machine, the read-only file accessible by the plurality of users of the plurality of virtual machines via attachment of the read-only volume to the plurality of virtual machines;

in response to the request, generate a sparse file corresponding to the read-only file, wherein the sparse file is unique to the user of the virtual machine, and wherein the sparse file is stored in a writable volume attached to the virtual machine and associated with the user;

identify a modification to the read-only file; and

in response to identifying the modification, initiate a write to the sparse file based on the modification and identifying the write in a region map.

10. The apparatus of claim 9 wherein the processing instructions to generate the sparse file corresponding to the read-only file direct the processing circuitry to, in a file system for the virtual machine, generate the sparse file corresponding to the read-only file.

11. The apparatus of claim 10 wherein the sparse file comprises an equivalently sized sparse file to the read-only file.

12. The apparatus of claim 9 wherein the processing instructions further direct the processing circuitry to:

identify a second modification to the read-only file; and

in response to identifying the second modification, initiate a second write to the sparse file based on the second modification and identify the second write in the region map.

13. The apparatus of claim 9 wherein the processing instructions further direct the processing system to:

identify a second request by a second user of a second virtual machine to open the read-only file; and

in response to the second request, generate a second sparse file corresponding to the read-only file, wherein the second sparse file is unique to the second user of the second virtual machine, and wherein the second sparse file is stored in a second writable volume attached to the second virtual machine and associated with the second user.

14. The apparatus of claim 9 wherein the read-only file comprises one of a text file, a database file, an image, or a HyperText Markup Language (HTML) file.

15. The apparatus of claim 9 wherein the processing instructions further direct the processing circuitry to:

identify a read request for the read-only file; and

retrieve data for the read request from one of the read-only file or the sparse file based on the region map.

16. The apparatus of claim 9 wherein the read-only file is stored in a readonly volume available to the plurality of users, and wherein the sparse file is stored in a write volume available to the user.

17. The apparatus of claim 9 further comprising the processing circuitry.

18. A system to manage modifications to read-only files, the system comprising:

one or more read-only volumes that store read-only files accessible by a plurality of users on a plurality of virtual machines;

one or more writable volumes associated with a first user of the plurality of users; and an interpret module configured to:

in response to a request from the first user on a virtual machine of the plurality of virtual machines to open a read-only file stored on the one or more read-only volumes, generate a sparse file in the one or more writable volumes corresponding to the read-only file, wherein the sparse file is unique to the first user, wherein the one or more read-only volumes and the one or more writable volumes are attached to the virtual machine;

identify a modification to the read-only file; and

in response to identifying the modification, initiate a write to the sparse file based on the modification and identifying the write in a region map.

Assignments (5)
PATENT ASSIGNMENT Recorded Aug 5, 2024
From: VMWARE LLC
To: OMNISSA, LLC
Reel/Frame 068327/0365 →
SECURITY INTEREST Recorded Jul 3, 2024
From: OMNISSA, LLC
To: UBS AG, STAMFORD BRANCH
Reel/Frame 068118/0004 →
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
MERGER Recorded Oct 13, 2015
From: CLOUDVOLUMES, INC.
To: VMWARE, INC.
Reel/Frame 036785/0944 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 24, 2015
From: CHOUDHARY, JAIRAM; CONOVER, MATTHEW
To: CLOUDVOLUMES, INC.
Reel/Frame 035490/0444 →