IP Library Granted Patent US 9,183,130
Granted Patent B2
US 9,183,130 · App. 14/256,964 · Granted Nov 10, 2015

Data control system for virtual environment

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,183,130
App. No.
14/256,964
Granted
Nov 10, 2015
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 (38)

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

receiving a request to retrieve data from a primary storage volume;

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

identifying allocated segments of the changed segments;

determining a subset of the allocated segments of the changed segments that are not in use;

executing an operation on the subset of the allocated segments of the changed segments to reduce an amount of the data retrieved from the primary storage volume; 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 a plurality of data items in a secondary storage volume within the primary storage volume.

5. The method of claim 4 further comprising:

determining a subset of the plurality of 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 involved in retrieving the 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 involved in retrieving the 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. The method of claim 1 wherein the primary storage volume includes a secondary storage volume stored thereon, and wherein identifying the allocated segments of the changed segments comprises identifying the allocated segments of the changed segments based on an allocation status of a plurality of data items contained in the secondary storage volume, wherein the plurality of data items correspond to the changed segments.

9. A data control system, the system comprising:

a communication interface configured to receive a request to retrieve data from a primary storage volume that includes a secondary storage volume;

a storage system configured to store the primary storage volume that includes the secondary storage volume;

a processing system configured to identify changed segments of a plurality of segments in the primary storage volume, and identify allocated segments of the changed segments, determine a subset of the allocated segments of the changed segments that are not in use, and execute an operation on the subset of the allocated segments of the changed segments to reduce an amount of the data retrieved from the primary storage volume; and

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

10. The system of claim 9 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 primary storage volume, and read a plurality of data blocks from the primary storage volume based on the list of qualified blocks.

11. The system of claim 9 wherein the primary storage volume comprises a plurality of blocks corresponding to a plurality of data items in a secondary storage volume within the primary storage volume.

12. The system of claim 11 wherein the processing system is further configured to determine a subset of the plurality of data items that are not live based on the allocated segments of the changed segments identified in the primary storage volume, and execute an operation on the subset of the data items to reduce an amount of the plurality of blocks involved in retrieving the data.

13. The system of claim 12 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 involved in retrieving the data comprises the processing system configured to delete each data item of the subset of the data items.

14. The system of claim 9 wherein the processing system configured to identify the allocated segments of the changed segments comprises the processing system configured to identify the allocated segments of the changed segments based on an allocation status of a plurality of data items contained in the secondary storage volume, wherein the plurality of data items correspond to the changed segments.

15. One or more non-transitory 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 primary storage volume;

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

identify allocated segments of the changed segments;

determine a subset of the allocated segments of the changed segments that are not in use;

execute an operation on the subset of the allocated segments of the changed segments to reduce an amount of the data retrieved from the primary storage volume; and

transfer the allocated segments in response to the request.

16. The one or more non-transitory computer-readable storage media of claim 15 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 primary storage volume, and read a plurality of data blocks from the primary storage volume based on the list of qualified blocks.

17. The one or more non-transitory computer-readable storage media of claim 15 wherein the primary storage volume comprises a plurality of blocks corresponding to a plurality of data items in a secondary storage volume within the primary storage volume.

18. The one or more non-transitory computer-readable storage media of claim 17 wherein the program instructions further direct the data control system to determine a subset of the plurality of data items that are not live based on the allocated segments of the changed segments identified in the primary storage volume, and execute an operation on the subset of the data items to reduce an amount of the plurality of blocks involved in retrieving the data.

19. The one or more non-transitory computer-readable storage media of claim 18 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 involved in retrieving the data, instructs the data control system to delete each data item of the subset of the data items.

20. The one or more non-transitory computer-readable storage media of claim 19 wherein the program instructions, in order to direct the data control system to identify the allocated segments of the changed segments, instructs the data control system to identify the allocated segments of the changed segments based on an allocation status of a plurality of data items contained in the secondary storage volume, wherein the plurality of data items correspond to the changed segments.

Assignments (12)
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Dec 18, 2025
From: QUANTUM CORPORATION
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION, AS AGENT
Reel/Frame 074024/0084 →
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 →
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 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 →
SECURITY INTEREST Recorded Oct 25, 2016
From: QUANTUM CORPORATION
To: PNC BANK, NATIONAL ASSOCIATION
Reel/Frame 040473/0378 →
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 Oct 8, 2015
From: WADE, GREGORY L.; HAILE, J. MITCHELL
To: QUANTUM CORPORATION
Reel/Frame 036755/0154 →