IP Library Granted Patent US 8,726,066
Granted Patent B1
US 8,726,066 · App. 13/077,271 · Granted May 13, 2014

Journal based replication with enhance failover

Inventors: Assaf Natanzon (Ramat-Gan, IL); Jehuda Shemer (Kfar Saba, 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,726,066
App. No.
13/077,271
Filed
Mar 31, 2011
Granted
May 13, 2014
Kind
B1
Art Unit
2114
USPC
714/4.11
Abstract

A method, system, and computer product for data replication comprising enabling a second site to receive I/O from a first site; wherein the second site stores the I/O in a journal until transferring the I/O to an image, regulating, at the first site, an application by delaying acknowledgements of I/O requests from the application, and controlling the size of a do stream in the journal by slowing a response of a splitter.

Claims (73)

1. A system for data replication, the system comprising:

a first site comprising:

an application;

an image; and

a journal based replication appliance;

a splitter;

a second site comprising:

a second journal based replication appliance;

a journal;

an image and

computer-executable logic operating in memory; wherein the computer-executable logic is configured for execution of:

enabling the second site to receive I/O from the first site; wherein the second site stores the I/O in the journal until transferring the I/O to the image;

regulating, at the first site, the application by delaying acknowledgements of I/O requests sent from the application to the image on the first site; wherein I/O requests of the application are intercepted by the splitter; wherein the regulating includes slowing acknowledgements sent from the splitter to the application to reduce differences between the image on the first site and the image on the second site; wherein the application waits for acknowledgement of I/O sent to the image;

controlling a size of a do stream in the journal on the second site by slowing a response of the splitter to the application.

2. The system of claim 1 wherein the splitter acknowledges the I/O request to the application upon acknowledgement from the journal based replication appliance; and wherein the computer-executable logic is further configured for execution of:

building an instant access data structure at the second site; wherein the instant access structures leverages the journal on the second site and the image on the second site to enable access to a current point in time on the first site regardless of whether split I/O in the journal has been applied to the image; wherein I/O received from the first site are added to the instant access data structure on the second site.

3. The system of claim 2 wherein the computer-executable logic is further configured for execution of:

enabling the journal based replication appliance on the first site to continue to delay acknowledgements until I/O lag between the image on the first site and the image on the second site is at a specified threshold.

4. The system of claim 2 wherein the computer-executable logic is further configured for execution of:

enabling the second site to process I/O from the journal and remove processed I/O from the instant access data structure while enabling instant access to the image on the second site.

5. The system of claim 4 wherein the computer-executable logic is further configured for execution of:

flushing IOs at the first site;

verifying that the IOs have been received at the second site;

enabling failover of the first site by stopping I/O on the first site and enabling access to the image on the second site; and

for a read to the image on the second site, determining if a target of the read is in the instant access data structure and, based on the determining, either performing the read on the instant access data structure or on the image.

6. The system of claim 3 wherein the computer-executable program logic is further configured for execution of:

responsive to interaction by a user, moving the first site to an immediate failover mode;

preparing the first site and the second site to perform a failover by creating an instant access data structure to enable instant access to the image on the second site regardless of whether I/O in the journal has been applied to the image and lowering lag between the first site and the second site to a predetermined amount of time.

7. The system of claim 6 wherein the computer-executable logic is further configured for execution of:

notifying the user that failover is ready; and

performing a failover between the first and second sites.

8. A computer implemented method for data replication, the method comprising:

enabling a second site to receive I/O from a first site; wherein the second site stores the I/O in a journal until transferring the I/O to an image;

regulating, at the first site, an application by delaying acknowledgements of I/O requests sent from the application to the image on the first site; wherein I/O requests of the application are intercepted by the splitter; wherein the regulating includes slowing acknowledgements sent from the splitter to the application to reduce differences between the image on the first site and the image on the second site; wherein the application waits for acknowledgement of I/O sent to the image;

controlling a size of a do stream in the journal on the second site by slowing a response of the splitter to the application.

9. The method of claim 8 wherein the splitter acknowledges the I/O request to the application upon acknowledgement from the journal based replication appliance; and wherein the method further comprising:

building an instant access data structure at the second site; wherein the instant access structures leverages the journal on the second site and the image on the second site to enable access to a current point in time on the first site regardless of whether split I/O in the journal has been applied to the image; wherein I/O received from the first site are added to the instant access data structure on the second site.

10. The method of claim 9 further comprising:

enabling the journal based replication appliance on the first site to continue to delay acknowledgements until I/O lag between the image on the first site and the image on the second site is at a specified threshold.

11. The method of claim 9 further comprising:

enabling the second site to process I/O from the journal and remove processed I/O from the instant access data structure while enabling instant access to the image on the second site.

12. The method of claim 10 further comprising:

flushing IOs at the first site;

verifying that the IOs have been received at the second site;

enabling failover of the first site by stopping I/O on the first site and enabling access to the image on the second site; and

for a read to the image on the second site, determining if a target of the read is in the instant access data structure and, based on the determining, either performing the read on the instant access data structure or on the image.

13. The method of claim 10 further comprising:

responsive to interaction by a user, moving the first site to an immediate failover mode;

preparing the first site and the second site to perform a failover by creating an instant access data structure to enable instant access to the image on the second site regardless of whether I/O in the journal has been applied to the image and lowering lag between the first site and the second site to a predetermined amount of time.

14. The method of claim 12 further comprising:

notifying the user that failover is ready; and

performing a failover between the sites.

15. A computer program product comprising:

a non-transitory computer readable medium encoded with computer executable program code, the replication environment having a production site and a splitter, the production site having storage mediums, the code:

enabling a second site to receive I/O from a first site; wherein the second site stores the I/O in a journal until transferring the I/O to an image;

regulating, at the first site, an application by delaying acknowledgements of I/O requests sent from the application to the image on the first site; wherein I/O requests of the application are intercepted by the splitter; wherein the regulating includes slowing acknowledgements sent from the splitter to the application to reduce differences between the image on the first site and the image on the second site; wherein the application waits for acknowledgement of I/O sent to the image;

controlling a size of a do stream in the journal on the second site by slowing a response of the splitter to the application.

16. The computer program product of claim 15 , wherein the splitter acknowledges the I/O request to the application upon acknowledgement from the journal based replication appliance; and wherein the code further enables:

building an instant access data structure at the second site; wherein the instant access structures leverages the journal on the second site and the image on the second site to enable access to a current point in time on the first site regardless of whether split I/O in the journal has been applied to the image; wherein I/O received from the first site are added to the instant access data structure on the second site.

17. The computer program product of claim 16 , wherein the code further enables:

enabling the journal based replication appliance on the first site to continue to delay acknowledgements until I/O lag between the image on the first site and the image on the second site is at a specified threshold.

18. The method of claim 16 further comprising:

enabling the second site to process I/O from the journal and remove processed I/O from the instant access data structure while enabling instant access to the image on the second site.

19. The method of claim 16 further comprising:

flushing IOs at the first site;

verifying that the IOs have been received at the second site;

enabling failover of the first site by stopping I/O on the first site and enabling access to the image on the second site; and

for a read to the image on the second site, determining if a target of the read is in the instant access data structure and, based on the determining, either performing the read on the instant access data structure or on the image.

20. The method of claim 16 further comprising:

responsive to interaction by a user, moving the first site to an immediate failover mode;

preparing the first site and the second site to perform a failover by creating an instant access data structure to enable instant access to the image on the second site regardless of whether I/O in the journal has been applied to the image and lowering lag between the first site and the second site to a predetermined amount of time; and

notifying the user that failover is ready; and

performing a failover between the sites.

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; SHEMER, JEHUDA
To: EMC INTERNATIONAL COMPANY
Reel/Frame 030479/0923 →