IP Library Granted Patent US 8,335,898
Granted Patent B2
US 8,335,898 · App. 13/465,892 · Granted Dec 18, 2012

Data allocation system

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,335,898
App. No.
13/465,892
Granted
Dec 18, 2012
Kind
B2
Abstract

A method of operating a data control system to copy a volume of data from a primary storage system to a secondary storage system comprises receiving an instruction to copy the volume of data, wherein the volume of data comprises a plurality of data blocks, in response to the instruction, determining if at least a data block of the plurality of data blocks requires copying to the secondary storage system, if the data block requires copying to the secondary storage system, then reading the data block from memory in the primary storage system and transferring the data block for writing to memory in the secondary storage system, and if the data block does not require copying, then transferring a synthetic block for writing to the memory in the secondary storage system.

Claims (32)

1. A method of operating a data control system to transfer a de-duplicated volume of data from a primary storage system to a secondary storage system, the method comprising:

receiving an instruction to transfer the de-duplicated volume of data, wherein the de-duplicated volume of data comprises a plurality of data blocks;

in response to the instruction, determining whether each of the plurality of data blocks is allocated or unallocated;

for each data block of the plurality of data blocks determined to be allocated, reading the data block from memory in the primary storage system and transferring the data block for storage in the secondary storage system; and

for each data block of the plurality of data blocks determined to be unallocated, refraining from reading the data block from memory in the primary storage system.

2. The method of claim 1 further comprising, for each data block of the plurality of data blocks determined to be unallocated, transferring a synthetic block for writing to the memory in the secondary storage system.

3. The method of claim 2 further comprising reading the synthetic block from a synthetic buffer.

4. The method of claim 3 wherein the synthetic block comprises synthetic information, wherein the secondary storage system processes the synthetic information to generate synthetic data, wherein the synthetic data is written to the memory of the secondary storage system.

5. The method of claim 1 further comprising storing status information indicating a status of each of the plurality of data blocks, wherein the status comprises either allocated or unallocated.

6. The method of claim 5 wherein the status information comprises a block bitmap.

7. The method of claim 1 wherein the de-duplicated volume of data comprises at least a portion of a virtual machine.

8. One or more non-transitory computer readable media having stored thereon instructions executable by a processing system to transfer a de-duplicated volume of data from a primary storage system to a secondary storage system that, when executed by the processing system, direct the processing system to at least:

receive an instruction to transfer the de-duplicated volume of data, wherein the de-duplicated volume of data comprises a plurality of data blocks;

in response to the instruction, determine whether each of the plurality of data blocks is allocated or unallocated;

for each data block of the plurality of data blocks determined to be allocated, read the data block from memory in the primary storage system and transfer the data block for storage in the secondary storage system; and

for each data block of the plurality of data blocks determined to be unallocated, refrain from reading the data block from memory in the primary storage system.

9. The one or more computer readable media of claim 8 wherein the instructions, when executed by the processing system, further direct the processing system to, for each data block of the plurality of data blocks determined to be unallocated, transfer a synthetic block for writing to the memory in the secondary storage system.

10. The one or more computer readable media of claim 9 wherein the instructions, when executed by the processing system, further direct the processing system to read the synthetic block from a synthetic buffer.

11. The one or more computer readable media of claim 10 wherein the synthetic block comprises synthetic information, wherein the secondary storage system processes the synthetic information to generate synthetic data, wherein the synthetic data is written to the memory of the secondary storage system.

12. The one or more computer readable media of claim 8 wherein the instructions, when executed by the processing system, further direct the processing system to store status information indicating a status of each of the plurality of data blocks, wherein the status comprises either allocated or unallocated.

13. The one or more computer readable media of claim 12 wherein the status information comprises a block bitmap.

14. The one or more computer readable media of claim 8 wherein the de-duplicated volume of data comprises at least a portion of a virtual machine.

15. A method of operating a data control system to transfer a virtual disk from a primary storage system to a secondary storage system, the method comprising:

receiving an instruction to transfer the virtual disk, wherein the virtual disk comprises a plurality of data blocks;

in response to the instruction, determining whether each of the plurality of data blocks is allocated or unallocated;

for each data block of the plurality of data blocks determined to be allocated, reading the data block from memory in the primary storage system and transferring the data block for storage in the secondary storage system; and

for each data block of the plurality of data blocks determined to be unallocated, refraining from reading the data block from memory in the primary storage system.

16. The method of claim 15 further comprising, for each data block of the plurality of data blocks determined to be unallocated, transferring a synthetic block for writing to the memory in the secondary storage system.

17. The method of claim 16 further comprising reading the synthetic block from a synthetic buffer.

18. The method of claim 17 wherein the synthetic block comprises synthetic information, wherein the secondary storage system processes the synthetic information to generate synthetic data, wherein the synthetic data is written to the memory of the secondary storage system.

19. The method of claim 15 further comprising storing block bitmap indicating a status of each of the plurality of data blocks, wherein the status comprises either allocated or unallocated.

20. The method of claim 1 wherein the virtual disk comprises a de-duplicated virtual disk file containing a virtual machine.

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 →
RELEASE OF SECURITY INTEREST Recorded Oct 24, 2016
From: WELLS FARGO CAPITAL FINANCE, LLC, AS AGENT
To: QUANTUM CORPORATION
Reel/Frame 040102/0875 →
SECURITY INTEREST Recorded Oct 21, 2016
From: QUANTUM CORPORATION
To: TCW ASSET MANAGEMENT COMPANY LLC, AS AGENT
Reel/Frame 040451/0183 →