IP Library › Granted Patent US 10,929,050
Granted Patent B2
US 10,929,050 · App. 16/396,897 · Granted Feb 23, 2021

Storage system with deduplication-aware replication implemented using a standard storage command protocol

Inventors: Anton Kucherov (Dudley, MA); David Meiri (Somerville, MA)
Assignee: EMC IP Holding Company LLC
G06F3/065G06F3/067G06F3/0608G06F3/0641G06F12/10G06F13/4221G06F2212/1044G06F2212/657G06F2213/0036
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 10,929,050
App. No.
16/396,897
Filed
Apr 29, 2019
Granted
Feb 23, 2021
Kind
B2
Art Unit
2138
USPC
711/165
Abstract

An apparatus obtains a set of content-based signatures for respective data pages of at least a portion of at least one storage volume replicated from a source storage system to a target storage system, issues a write for the set of content-based signatures to the target storage system, and reads from a designated location in the target storage system information indicating for each of the content-based signatures whether or not the corresponding data page is present in the target storage system. For one or more data pages not present in the target storage system, the apparatus writes the one or more data pages to respective logical addresses of the replicated storage volume in the target storage system. The issuing of a write, the reading from the designated location, and the writing of the one or more data pages are illustratively performed utilizing respective commands of a standard storage command protocol.

Claims (57)

1. An apparatus comprising:

at least one processing device comprising a processor coupled to a memory;

said at least one processing device being configured:

to obtain a set of content-based signatures for respective data pages of at least a portion of at least one storage volume replicated from a source storage system to a target storage system;

to issue a write for the set of content-based signatures to the target storage system;

to read from a designated location in the target storage system information indicating for each of the content-based signatures whether or not the corresponding data page is present in the target storage system; and

for one or more data pages not present in the target storage system, to write the one or more data pages to respective logical addresses of the replicated storage volume in the target storage system;

wherein issuing a write for the set of content-based signatures to the target storage system comprises:

generating a write command; and

sending the write command to the target storage system;

wherein the write command is issued to a designated content-based signature scan address; and

wherein the write command issued to the designated content-based signature scan address is interpreted by the target storage system as not comprising an actual write command but instead comprising a command to scan for content-based signatures.

2. The apparatus of claim 1 wherein said at least one processing device is implemented at least in part within at least one of the source and target storage systems.

3. The apparatus of claim 2 wherein said at least one processing device comprises a storage controller of at least one of the source storage system and the target storage system.

4. The apparatus of claim 1 wherein the replicated storage volume comprises at least one logical storage volume that is part of a consistency group subject to an ongoing replication process carried out between the source and target storage systems.

5. The apparatus of claim 1 wherein obtaining the set of content-based signatures comprises:

generating a current snapshot of the replicated storage volume;

performing a differential scan of the current snapshot relative to a previous snapshot of the replicated storage volume; and

obtaining the set of content-based signatures based at least in part on results of the differential scan.

6. The apparatus of claim 1 wherein issuing a write to the target storage system, reading from the designated location, and writing the one or more data pages to respective logical addresses are performed utilizing respective commands of a standard storage command protocol.

7. The apparatus of claim 6 wherein the standard storage command protocol comprises a Small Computer System Interface (SCSI) protocol.

8. The apparatus of claim 6 wherein the standard storage command protocol comprises a non-volatile memory over fabric protocol.

9. The apparatus of claim 1 wherein the information indicating for each of the content-based signatures whether or not the corresponding data page is present in the target storage system comprises at least one bitmap.

10. The apparatus of claim 1 wherein the content-based signatures comprise respective hash digests of respective data pages of the replicated storage volume with a given one of the hash digests being generated by applying a secure hashing algorithm to content of a corresponding one of the data pages of the replicated storage volume.

11. The apparatus of claim 1 wherein the content-based signatures comprise respective hash handles of respective ones of the data pages.

12. The apparatus of claim 11 wherein said at least one processing device is further configured:

for any of the data pages which are determined based on the hash handles to be present in the target storage system, to issue a write for hash digests and respective logical addresses of those data pages in the replicated storage volume to the target storage system; and

to read from another designated location in the target storage system information indicating for each of the hash digests whether or not a matching data page is present in the target storage system;

wherein the target storage system adjusts logical address mapping information and increments a reference count for each of one or more of the matching data pages; and

wherein the source storage system writes one or more non-matching data pages to respective logical addresses of the replicated storage volume in the target storage system.

13. The apparatus of claim 1 wherein for at least one of the one or more data pages not present in the target storage system, the source storage system writes the data page to a corresponding logical address in a compressed format, and the data page in the compressed format is decompressed by the target storage system prior to its storage in the corresponding logical address.

14. A method comprising:

obtaining a set of content-based signatures for respective data pages of at least a portion of at least one storage volume replicated from a source storage system to a target storage system;

issuing a write for the set of content-based signatures to the target storage system;

reading from a designated location in the target storage system information indicating for each of the content-based signatures whether or not the corresponding data page is present in the target storage system; and

for one or more data pages not present in the target storage system, writing the one or more data pages to respective logical addresses of the replicated storage volume in the target storage system;

wherein issuing a write for the set of content-based signatures to the target storage system comprises:

generating a write command; and

sending the write command to the target storage system;

wherein the write command is issued to a designated content-based signature scan address;

wherein the write command issued to the designated content-based signature scan address is interpreted by the target storage system as not comprising an actual write command but instead comprising a command to scan for content-based signatures; and

wherein the method is implemented by at least one processing device comprising a processor coupled to a memory.

15. The method of claim 14 wherein issuing a write to the target storage system, reading from the designated location, and writing the one or more data pages to respective logical addresses are performed utilizing respective commands of a standard storage command protocol.

16. A computer program product comprising a non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by at least one processing device causes said at least one processing device:

to obtain a set of content-based signatures for respective data pages of at least a portion of at least one storage volume replicated from a source storage system to a target storage system;

issuing a write for the set of content-based signatures to the target storage system;

to read from a designated location in the target storage system information indicating for each of the content-based signatures whether or not the corresponding data page is present in the target storage system; and

for one or more data pages not present in the target storage system, to write the one or more data pages to respective logical addresses of the replicated storage volume in the target storage system;

wherein issuing a write for the set of content-based signatures to the target storage system comprises:

generating a write command; and

sending the write command to the target storage system;

wherein the write command is issued to a designated content-based signature scan address; and

wherein the write command issued to the designated content-based signature scan address is interpreted by the target storage system as not comprising an actual write command but instead comprising a command to scan for content-based signatures.

17. The computer program product of claim 16 wherein issuing a write to the target storage system, reading from the designated location, and writing the one or more data pages to respective logical addresses are performed utilizing respective commands of a standard storage command protocol.

18. The computer program product of claim 16 wherein the information indicating for each of the content-based signatures whether or not the corresponding data page is present in the target storage system comprises at least one bitmap.

19. The computer program product of claim 16 wherein the content-based signatures comprise respective hash digests of respective data pages of the replicated storage volume with a given one of the hash digests being generated by applying a secure hashing algorithm to content of a corresponding one of the data pages of the replicated storage volume.

20. The computer program product of claim 16 wherein the content-based signatures comprise respective hash handles of respective ones of the data pages.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (050724/0466) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO WYSE TECHNOLOGY L.L.C.)
Reel/Frame 060753/0486 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST AT REEL 050405 FRAME 0534 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058001/0001 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Oct 15, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 050724/0466 →
SECURITY AGREEMENT Recorded Sep 17, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 050405/0534 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 28, 2019
From: KUCHEROV, ANTON; MEIRI, DAVID
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 050202/0906 →
Continuity (1)
Related Publication 20200341641A1 · Oct 29, 2020
Cited By (2)
US 12,277,031 US 12,373,306