IP Library Granted Patent US 8,983,915
Granted Patent B2
US 8,983,915 · App. 13/564,517 · Granted Mar 17, 2015

Successive data fingerprinting for copy accuracy assurance

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,983,915
App. No.
13/564,517
Granted
Mar 17, 2015
Kind
B2
Abstract

Systems and methods are disclosed for checking the data integrity of a data object copied between storage pools by comparing data fingerprints of data objects, comprising scheduling a series of successive copy operations over time for copying a data object from a source data store to a target data store; generating a partial fingerprint of the data object at the source data store that creates a fingerprint from a subset of the data object; sending the partial fingerprint of the data object to the target data store; sending any new data contents to the target data store; and creating a partial fingerprint of the data object at the target data store and comparing it to the received partial fingerprint to determine if they differ, thereby allowing incremental verification that the copy of the data object at the target data store is the same as at the source data store.

Claims (12)

1. A method for checking data integrity of a data object copied between storage pools in a storage system by comparing partial fingerprints of data objects, the method comprising:

scheduling a series of successive copy operations over time for copying a data object from a source data store to a target data store, each of the successive copy operations being configured to copy a version of the data object at a different time than the other successive copy operations;

generating a source partial fingerprint of the data object for a copy operation from the successive copy operations at the source data store using a data fingerprinting operation that creates a fingerprint from a subset of data of the data object, the subset being selected by a dynamic function that selects different subsets in response to an initialization parameter that changes with each successive copy operation and represents an offset or location within the data object so that the data fingerprinting operation samples different portions throughout the data object based on the initialization parameter to determine the subset of data for the fingerprinting operation;

sending the source partial fingerprint of the data object to the target data store;

sending new data contents for the data object to the target data store, wherein the new data contents are not in an earlier version of the data object sent to the target data store for an earlier copy operation of the successive copy operations; and

creating a target partial fingerprint of the data object at the target data store and comparing it to the source partial fingerprint sent to the target data store to determine if they differ and thereby indicate that the data object at the target data store differs from the corresponding data object at the source data store,

thereby allowing incremental verification that the copy of the data object at the target data store is the same as at the source data store.

2. The method of claim 1 , wherein the data object comprises different versions of the same data object over time and wherein new data contents are sent as difference objects specifying the different data in a later version of a data object.

3. The method of claim 1 , wherein a copy operation will cause the generation and sending of a new source partial fingerprint but will not send any new data contents if the data object was unchanged from a prior copy operation.

4. The method of claim 1 , further comprising the data fingerprinting operation being configured to operate on a sparse subset of bits that is small relative to the size of each data object.

5. The method of claim 1 , further comprising the data fingerprinting operation selecting a subset of bits that changes from one fingerprint to the next.

6. The method of claim 1 , further comprising requesting for the target partial fingerprint to be generated at the target data store.

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 Feb 3, 2015
From: MUTALIK, MADHAV; ABERCROMBIE, PHILIP J.; PROVENZANO, CHRISTOPHER A.
To: ACTIFIO, INC.
Reel/Frame 034874/0089 →