IP Library Granted Patent US 9,047,305
Granted Patent B2
US 9,047,305 · App. 13/674,152 · Granted Jun 2, 2015

Methods and systems for vectored data de-duplication

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,047,305
App. No.
13/674,152
Granted
Jun 2, 2015
Kind
B2
Abstract

The present invention is directed toward methods and systems for data de-duplication. More particularly, in various embodiments, the present invention provides systems and methods for data de-duplication that may utilize a vectoring method for data de-duplication wherein a stream of data is divided into “data sets” or blocks. For each block, a code, such as a hash or cyclic redundancy code may be calculated and stored. The first block of the set may be written normally and its address and hash can be stored and noted. Subsequent block hashes may be compared with previously written block hashes.

Claims (19)

1. A method, comprising:

comparing a de-duplication code for a first block of data received as part of an input stream to a de-duplication code for a previously processed block of data;

upon determining that the de-duplication code for the first block of data matches the code for the previously processed block of data, storing in an output stream a vector instead of the first block of data, where the vector points in the output stream to one of, the previously processed block of data, or another vector,

where the vector is placed in a location in the output data stream where the first block of data would have been placed, and

where the vector contains fewer bits than the first block of data, and

configuring the output stream to receive the next item to be stored after the end of the vector that was stored in the output stream, where the next item is to be processed from the input stream,

where the input stream can be recreated from the output stream without reference to other de-duplication data structures, and where the output stream includes self-describing data.

2. The method of claim 1 , where the stored block of data and the vector are stored in a non-tape solid state memory.

3. The method of claim 1 , where the vector comprises a pointer to a previous physical block.

4. The method of claim 1 , where the vector comprises a pointer to a previous logical block.

5. The method of claim 4 , where the vector comprises a start address and an offset.

6. The method of claim 1 , comprising:

upon determining that the de-duplication code for the first block of data matches the code for the previously processed block of data, verifying that the first block of data matches the previously processed block of data.

7. The method of claim 6 , where verifying that the first block of data matches the previously processed block of data comprises a bit-by-bit comparison of the first block of data and the previously processed block of data.

8. The method of claim 6 , where verifying that the first block of data matches the previously processed block of data comprises a byte-by-byte comparison of the first block of data and the previously processed block of data.

9. The method of claim 6 , where verifying that the first block of data matches the previously processed block of data comprises a word-by-word comparison of the first block of data and the previously processed block of data.

10. The method of claim 6 , where verifying that the first block of data matches the previously processed block of data comprises computing a second different code for the first block of data and computing a second different code for the previously processed block of data and then comparing the second different code for the first block of data to the second different code for the previously processed block of data.

11. The method of claim 1 , comprising:

selectively adding filler to the output stream in an amount sufficient to cause the next output to the output stream to begin on a block boundary.

Assignments (11)
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 →