IP Library Granted Patent US 8,707,005
Granted Patent B2
US 8,707,005 · App. 13/406,333 · Granted Apr 22, 2014

Data control systems for virtual environments

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 8,707,005
App. No.
13/406,333
Granted
Apr 22, 2014
Kind
B2
Abstract

A data control system comprises a communication interface, a processing system, and a storage system. The communication interface is configured to receive a request to retrieve data from a primary storage volume that includes a secondary storage volume. The storage system is configured to store the primary storage volume that includes the secondary storage volume. The processing system is configured to identify changed segments of a plurality of segments in the primary storage volume and identify allocated segments of the changed segments. The communication interface is further configured to transfer the allocated segments in response to the request.

Claims (35)

1. A method of operating a data control system, the method comprising:

receiving a request to retrieve data from a primary storage volume having a secondary storage volume stored thereon;

identifying changed segments of a plurality of segments in the primary storage volume;

identifying data items contained in the secondary storage volume that correspond to the changed segments;

determining an allocation status on the secondary storage volume for each of the identified data items;

identifying allocated segments of the changed segments that correspond to allocated data items of the identified data items; and

transferring the allocated segments in response to the request.

2. The method of claim 1 further comprising generating a list of qualified blocks based on the allocated segments of the changed segments identified in the primary storage volume.

3. The method of claim 2 further comprising reading a plurality of data blocks from the primary storage volume based on the list of qualified blocks.

4. The method of claim 1 wherein the primary storage volume comprises a plurality of blocks corresponding to the identified data items.

5. The method of claim 4 further comprising, in response to the request to retrieve the data from the primary storage volume:

determining a subset of the identified data items that are not live based on the allocated segments of the changed segments identified in the primary storage volume; and

executing an operation on the subset of the data items to reduce an amount of the plurality of blocks required by the request to retrieve data.

6. The method of claim 5 wherein executing the operation on the subset of the data items to reduce the amount of the plurality of blocks required by the request to retrieve data comprises deleting each data item of the subset of the data items.

7. The method of claim 6 further comprising flushing changes to the secondary storage volume after deleting each data item of the subset of the data items.

8. A data control system, the system comprising:

a communication interface configured to receive a request to retrieve data from a virtual disc file that includes a virtual drive;

a storage system configured to store the virtual disk file that includes the virtual drive; and

a processing system configured to identify changed segments of a plurality of segments in the virtual disc file, identify data items contained in the virtual drive that correspond to the changed segments, determine an allocation status on the virtual drive for each of the identified data items, and identify allocated segments of the changed segments that correspond to allocated data items of the identified data items;

the communication interface further configured to transfer the allocated segments in response to the request.

9. The system of claim 8 wherein the processing system is further configured to generate a list of qualified blocks based on the allocated segments of the changed segments identified in the virtual disc file, and read a plurality of data blocks from the virtual disc file based on the list of qualified blocks.

10. The system of claim 8 wherein the virtual disc file comprises a plurality of blocks corresponding to the identified data items.

11. The system of claim 10 wherein the processing system is further configured to, in response to the request to retrieve the data from the virtual disc file, determine a subset of the identified data items that are not live based on the allocated segments of the changed segments identified in the virtual disc file, and execute an operation on the subset of the data items to reduce an amount of the plurality of blocks required by the request to retrieve data.

12. The system of claim 11 wherein the processing system configured to execute the operation on the subset of the data items to reduce the amount of the plurality of blocks required by the request to retrieve data comprises the processing system configured to delete each data item of the subset of the data items.

13. One or more computer-readable storage media having program instructions stored thereon for operating a data control system, wherein the program instructions, when executed by the data control system, direct the data control system to:

receive a request to retrieve data from a file having a virtual drive stored thereon;

identify changed segments of a plurality of segments in the file;

identify data items contained in the virtual drive that correspond to the changed segments;

determine an allocation status on the virtual drive for each of the identified data items;

identify allocated segments of the changed segments that correspond to allocated data items of the identified data items; and

transfer the allocated segments in response to the request.

14. The one or more computer-readable storage media of claim 13 wherein the program instructions further direct the data control system to generate a list of qualified blocks based on the allocated segments of the changed segments identified in the file, and read a plurality of data blocks from the file based on the list of qualified blocks.

15. The one or more computer-readable storage media of claim 13 wherein the file comprises a plurality of blocks corresponding to the identified data items.

16. The one or more computer-readable storage media of claim 15 wherein the program instructions further direct the data control system to, in response to the request to retrieve the data from the file, determine a subset of the identified data items that are not live based on the allocated segments of the changed segments identified in the file, and execute an operation on the subset of the data items to reduce an amount of the plurality of blocks required by the request to retrieve data.

17. The one or more computer-readable storage media of claim 16 wherein the program instructions, in order to direct the data control system to execute the operation on the subset of the data items to reduce the amount of the plurality of blocks required by the request to retrieve data, instructs the data control system to delete each data item of the subset of the data items.

Assignments (13)
TERMINATION AND RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT AT REEL/FRAME NO. 40473/0378 Recorded Oct 8, 2025
From: PNC BANK, NATIONAL ASSOCIATION, AS AGENT
To: QUANTUM CORPORATION
Reel/Frame 073061/0454 →
TERMINATION AND RELEASE OF AMENDED AND RESTATED INTELLECTUAL PROPERTY SECURITY AGREEMENT AT REEL/FRAME NO. 48029/0525 Recorded Aug 19, 2025
From: PNC BANK, NATIONAL ASSOCIATION, AS AGENT
To: QUANTUM CORPORATION
Reel/Frame 072542/0594 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 24, 2025
From: BLUE TORCH FINANCE LLC, AS AGENT FOR THE SECURED PARTIES
To: ALTER DOMUS (US) LLC, AS AGENT FOR THE SECURED PARTIES
Reel/Frame 071019/0850 →
RELEASE OF SECURITY INTEREST Recorded Aug 10, 2021
From: U.S. BANK NATIONAL ASSOCIATION
To: QUANTUM CORPORATION; QUANTUM LTO HOLDINGS, LLC
Reel/Frame 057142/0252 →
SECURITY INTEREST Recorded Aug 5, 2021
From: QUANTUM CORPORATION; QUANTUM LTO HOLDINGS, LLC
To: BLUE TORCH FINANCE LLC, AS AGENT
Reel/Frame 057107/0001 →
SECURITY INTEREST Recorded Jan 8, 2019
From: QUANTUM CORPORATION
To: PNC BANK, NATIONAL ASSOCIATION
Reel/Frame 048029/0525 →
SECURITY INTEREST Recorded Dec 27, 2018
From: QUANTUM CORPORATION, AS GRANTOR; QUANTUM LTO HOLDINGS, LLC, AS GRANTOR
To: U.S. BANK NATIONAL ASSOCIATION, AS AGENT
Reel/Frame 049153/0518 →
RELEASE OF SECURITY INTEREST Recorded Dec 27, 2018
From: TCW ASSET MANAGEMENT COMPANY LLC, AS AGENT
To: QUANTUM CORPORATION
Reel/Frame 047988/0642 →
SECURITY INTEREST Recorded Oct 25, 2016
From: QUANTUM CORPORATION
To: PNC BANK, NATIONAL ASSOCIATION
Reel/Frame 040473/0378 →
RELEASE OF SECURITY INTEREST Recorded Oct 25, 2016
From: WELLS FARGO CAPITAL FINANCE, LLC, AS AGENT
To: QUANTUM CORPORATION
Reel/Frame 040474/0079 →
SECURITY INTEREST Recorded Oct 21, 2016
From: QUANTUM CORPORATION
To: TCW ASSET MANAGEMENT COMPANY LLC, AS AGENT
Reel/Frame 040451/0183 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 14, 2012
From: WADE, GREGORY L.; HAILE, J. MITCHELL
To: QUANTUM CORPORATION
Reel/Frame 028203/0557 →
SECURITY AGREEMENT Recorded Mar 31, 2012
From: QUANTUM CORPORATION
To: WELLS FARGO CAPITAL FINANCE, LLC, AS AGENT
Reel/Frame 027967/0914 →