IP Library Granted Patent US 9,753,955
Granted Patent B2
US 9,753,955 · App. 14/488,139 · Granted Sep 5, 2017

Fast deduplication data verification

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,753,955
App. No.
14/488,139
Granted
Sep 5, 2017
Kind
B2
Abstract

An information management system provides a data deduplication system that uses a primary table, a deduplication chunk table, and a chunk integrity table to ensure that a referenced deduplicated data block is only verified once during the data verification of a backup or other replication operation. The data deduplication system may reduce the computational and storage overhead associated with traditional data verification processes. The primary table, the deduplication chunk table, and the chunk integrity table, all of which are stored in a deduplication database, can also ensure synchronization between the deduplication database and secondary storage devices.

Claims (43)

1. A networked information management system configured to verify synchronization of deduplication information, the networked information management system comprising:

a data storage computer comprising computer hardware configured to:

retrieve, from an electronically stored deduplication database, a primary table, wherein the primary table identifies data blocks stored in a secondary storage device and data chunks associated with the data blocks, and wherein the primary table comprises a primary identification for each identified data block;

generate, for a first data chunk of the data chunks identified in the primary table, a first value based on the primary identifications of the identified data blocks;

generate, for the first data chunk identified in the primary table, a second value by squaring the primary identifications of the identified data blocks that are associated with the first data chunk and summing the squared primary identifications;

store, for the first data chunk identified in the primary table, an identification of the first data chunk in a deduplication chunk table;

store, for the first data chunk identified in the primary table, the first value associated with the first data chunk in the deduplication chunk table;

store, for the first data chunk identified in the primary table, the second value associated with the first data chunk in the deduplication chunk table; and

compare, for the first data chunk identified in the deduplication chunk table, the stored first value and the stored second value with values derived from an instance file corresponding to the first data chunk to verify that information stored in the primary table and information stored in the secondary storage device is synchronized.

2. The networked information management system of claim 1 , wherein the computer hardware is configured to generate, for the first data chunk identified in the primary table, the first value by summing the primary identifications of the data blocks that are associated with the first data chunk.

3. The networked information management system of claim 1 , wherein the deduplication database is stored in a deduplication database server.

4. The networked information management system of claim 1 , wherein the computer hardware of the data storage computer is further configured to store the deduplication chunk table in the deduplication database.

5. The networked information management system of claim 1 , wherein the computer hardware of the data storage computer is further configured to retrieve the primary table in response to a request to verify data in a backup.

6. The networked information management system of claim 5 , wherein the computer hardware of the data storage computer is further configured to delete the deduplication chunk table in response to a notification that verification of the data in the backup is complete.

7. A computer-implemented method for verifying synchronization of deduplication information, the computer-implemented method comprising:

retrieving, from an electronically stored deduplication database, a primary table, wherein the primary table identifies data blocks stored in a secondary storage device and data chunks associated with the data blocks, and wherein the primary table comprises a primary identification for each identified data block;

generating, for a first data chunk of the data chunks identified in the primary table, a first value based on the primary identifications of the identified data blocks;

generating, for the first data chunk identified in the primary table, a second value by squaring the primary identifications of the identified data blocks that are associated with the first data chunk and summing the squared primary identifications;

storing, for the first data chunk identified in the primary table, an identification of the first data chunk in a deduplication chunk table;

storing, for the first data chunk identified in the primary table, the first value associated with the first data chunk in the deduplication chunk table;

storing, for the first data chunk identified in the primary table, the second value associated with the first data chunk in the deduplication chunk table; and

comparing, for the first data chunk identified in the deduplication chunk table, the stored first value and the stored second value with values derived from an instance file corresponding to the first data chunk to verify that information stored in the primary table and information stored in the secondary storage device is synchronized.

8. The computer-implemented method of claim 7 , wherein generating, for the first data chunk identified in the primary table, the first value comprises summing the primary identifications of the data blocks that are associated with the first data chunk.

9. The computer-implemented method of claim 7 , wherein the deduplication database is stored in a deduplication database server.

10. The computer-implemented method of claim 7 , further comprising storing the deduplication chunk table in the deduplication database.

11. The computer-implemented method of claim 7 , further comprising:

receiving a request to verify data in a backup; and

retrieving the primary table in response to receiving the request to verify the data in the backup.

12. The computer-implemented method of claim 11 , further comprising deleting the deduplication chunk table in response to a notification that verification of the data in the backup is complete.

13. A networked information management system configured to verify synchronization of deduplication information, the networked information management system comprising:

a storage manager comprising computer hardware configured to receive a request to verify data in a backup;

a deduplication database media agent comprising an electronically stored deduplication database and computer hardware configured to:

retrieve, from the deduplication database, a primary table, wherein the primary table identifies data blocks stored in a secondary storage device and data chunks associated with the data blocks, and wherein the primary table comprises a primary identification for each identified data block;

generate, for a first data chunk of the data chunks identified in the primary table, a first value based on the primary identifications of the identified data blocks;

generate, for the first data chunk identified in the primary table, a second value by squaring the primary identifications of the identified data blocks that are associated with the first data chunk and summing the squared primary identifications;

store, for the first data chunk identified in the primary table, an identification of the first data chunk in a deduplication chunk table;

store, for the first data chunk identified in the primary table, the first value associated with the first data chunk in the deduplication chunk table;

store, for the first data chunk identified in the primary table, the second value associated with the first data chunk in the deduplication chunk table; and

compare, for the first data chunk identified in the deduplication chunk table, the stored first value and the stored second value with values derived from an instance file corresponding to the first data chunk to verify that information stored in the primary table and information stored in the secondary storage device is synchronized.

14. The networked information management system of claim 13 , wherein the computer hardware is configured to generate, for the first data chunk identified in the primary table, the first value by summing the primary identifications of the data blocks that are associated with the first data chunk.

15. The networked information management system of claim 13 , wherein the computer hardware of the deduplication database media agent is further configured to store the deduplication chunk table in the deduplication database.

16. The networked information management system of claim 13 , wherein the computer hardware of the deduplication database media agent is further configured to retrieve the primary table in response to the request to verify the data in the backup.

17. The networked information management system of claim 16 , wherein the computer hardware of the deduplication database media agent is further configured to delete the deduplication chunk table in response to a notification that verification of the data in the backup is complete.

Assignments (3)
SUPPLEMENTAL CONFIRMATORY GRANT OF SECURITY INTEREST IN UNITED STATES PATENTS Recorded Apr 16, 2025
From: COMMVAULT SYSTEMS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 070864/0344 →
SECURITY INTEREST Recorded Dec 13, 2021
From: COMMVAULT SYSTEMS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 058496/0836 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 16, 2014
From: AGRAWAL, SAURABH; VIJAYAN, MANOJ KUMAR
To: COMMVAULT SYSTEMS, INC.
Reel/Frame 033753/0053 →