IP Library Granted Patent US 8,402,004
Granted Patent B2
US 8,402,004 · App. 12/947,418 · Granted Mar 19, 2013

System and method for creating deduplicated copies of data by tracking temporal relationships among copies and by ingesting difference data

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,402,004
App. No.
12/947,418
Granted
Mar 19, 2013
Kind
B2
Abstract

Systems and methods are disclosed for forming deduplicated images of a data object that changes over time using difference information between temporal states of the data object. The method includes organizing the content of the data object for a first temporal state as a plurality of content segments and storing the content segments in a data store; creating an organized arrangement of hash structures to represent the data object in its first temporal state; receiving difference information for the data object; forming at least one hash signature for the changed content; and storing the changed content that is unique in the data store as content segments, whereby a deduplicated image of the data object for a second temporal state is stored without requiring reception of a complete image of the data object for the second temporal state.

Claims (16)

1. A method of storing deduplicated images of a data object that changes over time in a deduplicating content store using difference information between temporal states of the same data object, said method comprising:

organizing the content of the data object for a first temporal state of the data object as a plurality of content segments and storing the plurality of content segments in a data store;

creating a content structure representing content of the data object as an organized arrangement of hash structures in the data store, wherein for a subset of the hash structures, each hash structure includes a hash signature for a corresponding content segment and is associated with a reference to the corresponding content segment, and wherein a logical organization of the content structure represents the organization of the content segments as they are represented within the data object;

creating a first temporal structure representing the temporal state of the data object in its first temporal state, the temporal structure associated with the content structure in the data store;

receiving difference information for the data object, said difference information indicating changed content for the data object for a second temporal state of the data object relative to the first temporal state, and said difference information indicating a location of the changed content within the data object;

forming at least one hash signature for the changed content;

determining whether the changed content should be stored by searching for the at least one hash signature in the content structure associated with the first temporal structure,

storing any changed content that is unique in the data store as content segments;

modifying the organized arrangement of hash structures to incorporate new structures for the at least one hash signature for the changed content, incorporating the new structures in the organized arrangement of structures at a position corresponding to the location of the changed content within the data object as indicated within said difference information, and associating the hash signatures for the new structures with references to the content segments corresponding to the changed content;

creating a second temporal structure for the second temporal state of said data object that is associated with the first temporal structure; and

associating the new structures with the second temporal structure, so that the difference between the content associated with the first temporal structure and the second temporal structure indicates how the data object has changed over time,

thereby creating a deduplicated image of the data object for a later temporal state using data that has been stored at a prior temporal state of the data object without querying hash structures for data that are unrelated to the data object.

2. The method of claim 1 , wherein after forming the at least one hash signature for changed content, the formed signature is compared to at least one hash signature in the content structure to determine if the formed structure already exists in the organized arrangement.

3. The method of claim 2 , wherein the comparison first occurs with a hash structure in the organized arrangement at a position corresponding to the location of the changed content as indicated in the difference information.

4. The method of claim 1 , wherein the organized arrangement of hash structures is an organized tree structure.

5. The method of claim 1 , wherein an organized arrangement of temporal structures are maintained, each temporal structure associated with a time state and each including information indicative of the hash structures corresponding to the associated time state.

Assignments (8)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 26, 2021
From: ACTIFIO, INC.
To: GOOGLE LLC
Reel/Frame 056911/0517 →
RELEASE OF SECURITY INTEREST Recorded May 29, 2020
From: CRESTLINE DIRECT FINANCE, L.P., AS COLLATERAL AGENT
To: ACTIFIO, INC.
Reel/Frame 053483/0084 →
SECURITY INTEREST Recorded Aug 3, 2018
From: ACTIFIO, INC.
To: CRESTLINE DIRECT FINANCE, L.P., AS ADMINISTRATIVE AGENT, COLLATERAL AGENT AND SOLE LEAD ARRANGER
Reel/Frame 046702/0543 →
RELEASE OF SECURITY INTEREST Recorded May 5, 2017
From: HERCULES CAPITAL, INC. (FORMERLY KNOWN AS HERCULES TECHNOLOGY GROWTH CAPITAL, INC.)
To: ACTIFIO, INC.
Reel/Frame 042415/0395 →
RELEASE OF SECURITY INTEREST Recorded May 5, 2017
From: SILICON VALLEY BANK
To: ACTIFIO, INC.
Reel/Frame 042415/0317 →
SECURITY AGREEMENT Recorded Jul 16, 2015
From: ACTIFIO, INC.
To: SILICON VALLEY BANK
Reel/Frame 036113/0970 →
SECURITY INTEREST Recorded Jul 14, 2015
From: ACTIFIO, INC.
To: HERCULES TECHNOLOGY GROWTH CAPITAL, INC., AS AGENT
Reel/Frame 036106/0004 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 11, 2011
From: PROVENZANO, CHRISTOPHER A.; ROMAN, MARK A.
To: ACTIFIO, INC.
Reel/Frame 025766/0279 →