IP Library Granted Patent US 8,805,786
Granted Patent B1
US 8,805,786 · App. 13/168,391 · Granted Aug 12, 2014

Replicating selected snapshots from one storage array to another, with minimal data transmission

Inventor: Assaf Natanzon (Ramat Gan, IL)
Assignee: EMC Corporation
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,805,786
App. No.
13/168,391
Filed
Jun 24, 2011
Granted
Aug 12, 2014
Kind
B1
Art Unit
2162
USPC
707/639
Abstract

Example embodiments of the present invention provide methods for replicating a production site snapshot to a replication site. A first example embodiment creates a snapshot of the production volume at the production site and creates a bookmark in a do metadata stream. The bookmark may be sent to the replication site and, when processed from the do metadata stream at the replication site, cause the replication site to create a snapshot of the replication volume according to the bookmark. A second example embodiment replicates to a replication site snapshot by generating a list of differences between the production site snapshot and the replication site snapshot and performs replication according to the differences. The differences may include differences between the production site volume and the production site snapshot, differences between the production site volume and the replication site volume and differences between the replication site volume and the replication site snapshot.

Claims (71)

1. A computer-implemented method for replicating a snapshot of a production volume at a production site storage array to a snapshot of a replication volume at a replication site storage array, the method comprising:

creating the snapshot of the production volume at the production site storage array; and

creating a bookmark indicative of a time the snapshot of the production volume was created, comprising:

creating the bookmark at the production site;

sending the bookmark to the replication site; and

storing the bookmark in a do metadata stream of a journal maintained at the replication site;

creating a snapshot of the replication volume at the replication site storage array according to the bookmark, comprising:

applying data to the replication volume from the do metadata stream of the journal maintained at the replication site; and

creating the snapshot of the replication volume at the replication site if the data applied to the replication volume from the do metadata stream is the bookmark.

2. The method of claim 1 further comprising:

prior to creating the snapshot, notifying a production site replication appliance to quiesce commands received by the replication appliance; and

after creating the bookmark, notifying the production site replication appliance to unquiesce commands received by the production site replication appliance.

3. A system for replicating a snapshot of a production volume at a production site storage array to a snapshot of a replication volume at a replication site storage array, the system comprising:

one or more processors

a production site;

a replication site;

a replicator at the production site configured to create the snapshot of the production volume at the production site storage array, create a bookmark indicative of a time the snapshot of the production volume was created; and

a manager at the replication site configured to store the bookmark in a do metadata stream of a journal maintained at the replication site and create a snapshot of the replication volume at the replication site storage array according to the bookmark;

wherein the replicator is further configured to create the bookmark at the production site and send the bookmark to the replication site, apply data to the replication volume from the do metadata stream of the journal maintained at the replication site and create the snapshot of the replication volume at the replication site if the data applied to the replication volume from the do metadata stream is the bookmark.

4. The system of claim 3 further comprising a manager at the production site configured to notify a production site replication appliance to quiesce commands received by the replication appliance prior to creating the snapshot and notify the production site replication appliance to unquiesce commands received by the production site replication appliance after creating the bookmark.

5. A computer-program product including a non-transitory computer-readable storage medium encoded with computer-program code that, when executed on a processor of a computer, cause the computer to replicate a snapshot of a production volume at a production site storage array to a snapshot of a replication volume at a replication site storage array, the computer-program code comprising:

computer-program code for creating the snapshot of the production volume at the production site storage array; and

computer-program code for creating a bookmark, comprising

computer-program code for creating the bookmark at the production site;

computer-program code for sending the bookmark to the replication site; and

computer-program code for storing the bookmark in a do metadata stream of a journal maintained at the replication site;

computer-program code for creating a snapshot of the replication volume at the replication site storage array according to the bookmark, comprising:

computer-program code for applying data to the replication volume from a do metadata stream of the journal maintained at the replication site; and

computer-program code for creating the snapshot of the replication volume at the replication site if the data applied to the replication volume from the do metadata stream is the bookmark.

6. The computer-program product of claim 5 further comprising:

computer-program code for notifying a production site replication appliance to quiesce commands received by the replication appliance prior to creating the snapshot; and

computer-program code for notifying the production site replication appliance to unquiesce commands received by the production site replication appliance after creating the bookmark.

7. A computer-implemented method for replicating a production site snapshot of a production site volume to an existing replication site snapshot, the production site volume replicated by a replication appliance to a replication site volume, the method comprising:

creating a consistency group for the production site volume and the replication site volume;

attaching the production site snapshot to a production site splitter as clean; and

attaching the replication site snapshot to a replication site splitter as clean

generating, by one or more splitters, a list of differences between the production site snapshot and the replication site snapshot;

determining differences between the production site volume and the production site snapshot;

determining differences between the production site volume and the replication site volume;

determining differences between the replication site volume and the replication site snapshot; and

performing replication by the replication appliance from the production site snapshot to the replication site snapshot according to the list of differences.

8. The method of claim 7 wherein determining differences between the production site volume and the production site snapshot comprises obtaining from a production site splitter a list of changes between the production site volume and the production site snapshot.

9. The method of claim 7 wherein determining differences between the production site volume and the replication site volume comprises:

obtaining data in a delta marking stream of the production site volume;

obtaining data in a do stream at the replication site; and

obtaining locations in an image access stream if the replication site is in an image access mode.

10. The method of claim 7 wherein determining differences between the replication site volume and the replication site snapshot comprises obtaining from a replication site splitter a list of changes between the replication site volume and the replication site snapshot.

11. A system for replicating a production site snapshot of a production site volume to a replication site snapshot, the production site volume replicated to a replication site volume, the system comprising:

one or more processors;

a production site splitter;

a replication site splitter;

a manager configured to create a consistency group for the production site volume and the replication site volume, attach the production site snapshot to the production site splitter as clean; attach the replication site snapshot to the replication site splitter as clean, and generate a list of differences between the production site snapshot and the replication site snapshot by determining differences between the production site volume and the production site snapshot, determining differences between the production site volume and the replication site volume, and determining differences between the replication site volume and the replication site snapshot; and

a replicator configured to perform replication from the production site snapshot to the replication site snapshot according to the list of differences.

12. The system of claim 11 further comprising a production site splitter, wherein the manager is further configured to obtain from the production site splitter a list of changes between the production site volume and the production site snapshot.

13. The system of claim 11 wherein the manager is further configured to obtain data in a delta marking stream of the production site volume, obtain data in a do stream at the replication site and obtain locations in an image access stream if the replication site is in an image access mode.

14. The system of claim 11 further comprising a replication site splitter, wherein the manager is further configured to obtain from the replication site splitter a list of changes between the replication site volume and the replication site snapshot.

15. A computer-program product including a non-transitory computer-readable storage medium encoded with computer-program code that, when executed on a processor of a computer, cause the computer to replicate a production site snapshot of a production site volume to a replication site snapshot, the production site volume replicated to a replication site volume, the computer-program code comprising:

computer-program code for creating a consistency group for the production site volume and the replication site volume;

computer-program code for attaching the production site snapshot to a production site splitter as clean;

computer-program code for attaching the replication site snapshot to a replication site splitter as clean;

computer-program code for generating a list of differences between the production site snapshot and the replication site snapshot;

computer-program code for determining differences between the production site volume and the production site snapshot;

computer-program code for determining differences between the production site volume and the replication site volume;

computer-program code for determining differences between the replication site volume and the replication site snapshot; and computer-program code for performing replication from the production site snapshot to the replication site snapshot according to the list of differences.

16. The computer-program product of claim 15

wherein computer-program code for determining differences between the production site volume and the production site snapshot comprises computer-program code for obtaining from a production site splitter a list of changes between the production site volume and the production site snapshot; and

wherein computer-program code for determining differences between the replication site volume and the replication site snapshot comprises computer-program code for obtaining from a replication site splitter a list of changes between the replication site volume and the replication site snapshot.

17. The computer-program product of claim 15 wherein computer-program code for determining differences between the production site volume and the replication site volume comprises:

computer-program code for obtaining data in a delta marking stream of the production site volume;

computer-program code for obtaining data in a do stream at the replication site; and

computer-program code for obtaining locations in an image access stream if the replication site is in an image access mode.

Assignments (11)
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 (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
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 →
SECURITY AGREEMENT Recorded Mar 21, 2019
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 049452/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 29, 2016
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 040203/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 22, 2013
From: EMC INTERNATIONAL COMPANY
To: EMC CORPORATION
Reel/Frame 030847/0412 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 24, 2013
From: NATANZON, ASSAF
To: EMC INTERNATIONAL COMPANY
Reel/Frame 030479/0841 →